О йес... Я добил его...

Просто неправильно работал с SINGLE threading model - не передавал интерфейсы между потоками через ф-ии CoMarshalInterThreadInterfaceInStream и CoGetInterfaceAndReleaseStream. Теперь всё работает. Если кого то интересует - могу выложить исходные коды этого ActiveX-контрола на Delphi куда пожелаете.
P.S.
Кстати саму threading model как оказалось менять вовсе и не обязательно - главное самому насильно принудить программу работать в single режиме вызовом вышеупомянутых функций.