All of those initial images have less than 20 colors, as if the full palette wasn't realized and it was using only the 20 "reserved" system palette entries.
Try it with
DDrawCompat. It does palette conversion in software via GDI, may have better results...
Edit: Ah, I just noticed you may be using Windows XP (are you?) in which case this probably won't help. (Newest version definitely wouldn't work as it links to dwmapi.dll, older versions are simply unlikely to work as I never bothered to maintain support for such a legacy OS).