Why are you needing the hDC? Not sure but when this gets called OpenGL has been initialized and is ready for OpenGL drawing requests. If you aren't using the dynamic display, have you tried overriding ILayer.Draw instead?
–
Kirk KuykendallJul 14 '11 at 16:17

@Kirk Kuykendall Well for this example, I am using the DynamicDisplay. Right now I'm drawing hover ballons with an invisible top window because of the issue with balloon callouts in DD they look like this iterationx.posterous.com/34293301, so I thought I'd use GDI+ instead.
–
patrickJul 14 '11 at 16:27

Yeah, those DD labels look bad. Still, GDI+ sure will slow you down. Have you looked into DD with MOLE? The military usually has the resources to figure this stuff out.
–
Kirk KuykendallJul 14 '11 at 17:14