My program is written entirely in C++ using GDI. The goal being it would have full backwards compatibility from Windows 7 all the way down to Windows XP. The problem I'm having is when a computer is using Windows XP or a Vista machine without Aero activated, the program doesn't refresh properly.

When it has to occlude with other programs, my window will display artifacts and other bizarre graphical refresh problems.

Any known issues or ideas to get me moving in the right direction?