I did some work at the weekend on a menu system and noticed quite a big difference between creating a font and displaying 10 text strings as against calling a function which created the font each time it drew the text string. The font create part seems to be very heavy. Unless you want to change font attributes you should only create a font once if you can manage.
You will see in the new rotate demo in 0.6 that Kzinti uses a simple and fast method of getting the FPS counter. Much quicker than using a real font but of course without all the fancy things you can add.
I will update the font chapter to add in the missing line.
( re: the font article, I was always really annoyed at how Windows font examples in books made it look really difficult to handle fonts so I sat down & peeled it back to basics. Glad to be of help )
Just checked, I do have
m_background->ReleaseDC( hDC );
but that only works if the rest of the code is used as is. I will update to make things clearer.