Turns out Panda3d does implement mass.rotate.  I think the reason why I did not use it is because it needs a 3x3 rotation matrix and my code uses quaternions everywhere.  So I need to add some glue-code to make it work. 

What I have noticed is that Panda3d seems to be based on a newer version of ODE than PyODE (or they have altered the API) and the differences are significant when it comes to composite bodies (for example they don't have transform geoms). 

Unfortunately I think the solution for you is to calculate the inertia tensor yourself for the composite of the mass objects.  Then just make a single mass for your body and assign it the inertia tensor you calculated.  Maybe that is deeper than you were hoping to dig but it should something that is pretty well covered on the Internet.