Pues yo no veo que debas seguir ninguno de esos dos pasos para conseguir lo que quieres, el método
DesplegarForma, visto así por encima, parece que hace lo que debe, y, se hayan
autocreado los formularios o no, debe funcionar igual.
Ten en cuanta que en el ejemplo de Roman, se chequea una variable (Form2 del tipo TForm2 en el ejemplo), de ahí la necesidad de saber si está a
nil o no, y de que interese destruirla al cerrarse (con caFree) y avisar al Form principal para que la ponga a
nil cuando ello suceda. Pero en tu caso, puesto que no chequeas una variable concreta sino un tipo de formulario, eso no es necesario.
Saludos
PD: el código que pones lo puedes encerrar entre una etiqueta [ delphi ] para que se vea más claro