A ver, si hago lo siguiente:
Código Delphi
[-]procedure TForm1.Button1Click(Sender: TObject);
begin
Form2 := TForm2.Create(Form1);
Form2.Show;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Form3 := TForm3.Create(Form1);
Form3.Show;
end;
Sí se comportan de la manera esperada. Pero, estando en el mismo procedimiento se comportan como he dicho anteriormente.
Saludos