Application.ShowMainForm := False
ist in diesem Fall das Beste. MainForm bleibt so lange vorerst unsichtbar, bis es zB mit Show
sichtbar gemacht wird.
Aber nur, wenn Visible nicht schon True war.
Das gilt auch für weite Formulare, welche automatisch erstellt werden ... alles was Visible=True hat, wird sichtbar und dazu eben noch die MainForm, bei ShowMainForm=True.
Aber da könnte man versuchen das Visible auf False zu setzen, wobei es hier vermutlich auch wieder aufblinken würde, wenn es vorher schon Visible war.