в OnCreate нет смысла рисовать, а в OnClick еще можно, но когда-нибудь нарисованое все-равно пропадет
проблема в том, что Windows перерисовывает контекст когда потребуется: окно создалось/развернулось/переместилось/изменило размеры и т.д. ей не интересно что до этого на нем кто-то что-то нарисовал. чтобы восстановить былую красоту должен позаботиться создатель. для этого ему предоставляется сообщение WM_PAINT (событие OnPaint).