I have run into situations where an application doesn't properly register itself in the ROT (Running Object Table), so GetActiveObject() doesn't "see" an app instance.
You can use a utility called IROTVIEW to view the ROT realtime.
That is not the case here...I can retrieve the OLE object for the one copy of XMLSpy I have open, but the Quit method just doesn't seem to be closing it out.