How do you handle constructor parameters? I.e. I would normally do this:
The Activator.CreateInstance supports parameters. It accepts a ParamArray and will pass these to the constructor of the object being created. You can create an overload on the LaunchForm method that accepts parms as well:
Private Sub LaunchForm(ByVal FormType As System.Type, ByVal ParamArray Parms() As Object)
Activator.CreateInstance(FormType, Parms)
End Sub