However, I have managed to figure out what was causing a dialog to misbehave when I was launching it from our COM server. I even know how to fix it right.
Eventually, there will be time to fix it right. For the moment, I'm going to settle for works at all...