El evento _Draw es el indicado para dibujar ciertas cosas, teniendo en cuenta que se dispara cada vez que cambia el control Drawing Area. Por ejemplo, al abrir el formulario, o al cambiar su tamaño o al taparlo y destaparlo con otro formulario... etc. Por lo que veo, para lo que tu necesitas, no parece el evento adecuado, así que el consejo de BrunoIV es completamente válido.
Sin embargo, yo lo he usado con éxito (El evento _Draw) para dibujar un mapa y ciertas cosas sobre él a voluntad, eligiendo las "capas" que quiero visualizar en el mapa mediante un Button Check.
Aquí te dejo el código por si te sirve algo de lo que veas:
http://dfhlog.googlecode.com/svn/branches/dfhlog1.1/FLoc.class
El truco consiste en crear métodos que dibujen lo que quieres y luego, dentro del evento _Draw llamas a esos métodos con un condicional, que puede ser IF..THEN o un SELECT CASE, o lo que quieras. Para ello usamos un "flag" que no es más que una variable Privada que almacena un valor booleano y que cambias a voluntad para que el programa dibuje o no dependiendo del valor de dicha variable.
Esta es la forma más eficiente de dibujar, aunque no quiere decir que sea la única válida. Si tienes dudas, pregunta de nuevo.
Saludos