Hi,
we also faced problems getting the room boundaries, several times in the past.
There is another method to get the polygons, e.g. using
ExporterIFCUtils.GetRoomBoundaryAsCurveLoopArray.
Also, one could export a gbXML and read the spatial geometry from the exported file (not tested so far).
But yes, it's a pain, anyway.
Revitalizer