(if something was on top of the shape and it scaled down, it would remain there "floating" until it moved or something
Well, if this happens only when the btMultiSphereShaped body is (local) scaled at runtime, the problem can probably be solved by removing/readding the body from/to the world, so that the contact cache gets cleared (and I think this could happen with other shapes too: clearing the contact cache and re-activating the body can help).
I was just referring to the collision behavior of the body in general, and from your response it seems to be working.
I wonder why the original code does not allow scaling the positions... maybe they wanted to keep the bounding box as small as possible... but this is not consistent with the behavior of other shapes (btConvexHullShape). Or maybe just because in some particular cases scaling the radii without scaling the vertices can be useful to implement some kind of shape transformation... I don't know
Anyway thank you for your feedback: I hope your patch will be integrated into Bullet if there's nothing preventing it