Rocket Commander does not use the OnPaint methods for rendering. I tried the rocket commander method on Battle Tank and my average fps went from 45 fps to over 1000 fps! (which is a bit annoying as it's WAAAY too fast!)
Basically you don't use the Application.Run method and render in OnPaint, but create your own form, have a "while" loop. The while loop calls Application.DoEvents() to make sure it plays nicely.
If you just follow the rocketcommander stuff for the first couple of tutorial you can learn some good stuff to use here - but it doesnt cover the basics of cameras and stuff - goes very advanced very quickly