質問ですが、
GetDC(m_hWnd)
したあと、必ずReleaseDCをしなければならないと決まりがありますが、
特にReleaseDCをしなくても、エラーは出ません。

これはGetDCをするたびに、メモリ領域が作成され、
終了後、すぐにReleaseで削除しないといけないということなのでしょうか?

GetDCを呼び出す回数が多いので、いちいちReleaseDCを呼び出すのが難です。