Raymond Chen has a great article that explains why your program may look different under a Remote Desktop or Terminal Services session. If you do double buffering to eliminate screen flickering, you’ll pay a performance penalty when running over a remote connection. His tip is to have the app’s code detect if it’s running in a remote session and disable the double buffering. You get some flickering, but it will be much faster than shoving a large bitmap down the pipe.