В ответ на запрос IRP_MN_QUERY_REMOVE_DEVICE в обработчике UsbCom_ProcessPnPIrp возвращаю STATUS_UNSUCCESSFUL, после чего винда для удаления девайса требует перезагрузки и все протекает относительно корректно. Но все равно - не кошерно это получается :(