This drove me crazy also, I got around all the problems by:
1) Do not remove the form from the Autocreate list.
2) Change the form properties
visible to false
formstyle to fsNormal
3) to execute your form
if FormName.execute then
do something
4) in your modal form, code your ok button like
Result := (showmodal = mrOK);
I'm sure there is the correct way to do this in an MDI, but I could not find it anywhere. This seems to work for me