A little more digging...
#1 - If you create a blank master page and use a table layout, the tables render properly.
#2 - There seems to be a minimum row height of 22 pixels. That's what trashing the tables here. I have shim rows that are 1 pixel tall and other rows that are shorter than 22 pixels. All rows in a CanvasIFrameMasterPage will be at least
22 pixels in height.
#3 - it's not the included CSS file, I'm not using it.
I've downloaded the source and looked at the CanvasIFrameMasterPage.cs and CanvasIFrameBasePage.cs and don't see anything that would cause this, they are just extensions to the base class and don't seem to add any styling. I'm trying to read through
BasePageHelper.cs right now and see what's going on in there, but, I'm still baffled.
Anyone have some ideas?