And of course, there’s still the autodetection of the raw white level (which fails in a number of cases): if it’s set too high, highlight correction can’t do its job (as there are no clipped pixels according to the raw white point…)
You can check if that’s the case for you with exiftool (easiest), look for those lines:
Normal White Level : 11765
Specular White Level : 12277
Linearity Upper Margin : 10000
(values can depend on your camera model, these are for a random .CR2 file I had available)
Compare these with what darktable picks in the raw black and white point module…
If the dt white point is wrong, correcting it will help solving part of the problem, and may make getting a decent result easier.