I'm having a problem getting spheres to roll, even though they bounce and slide just fine. I initially thought it was a problem in the draw method, but if I give a sphere an initial angular velocity it rotates and renders correctly. If I watch a sphere's collision skin orientation matrix while debugging (without giving it an initial angular velocity, but with external collisions affecting it enough where it should rotate), it doesn't show significant rotation, but it also doesn't stay at identity. It'll show something like 0.9998 in place of the 1's or 0.0003 in place of 0's. The orientation changes each frame but always stays within a few thousanths of identity. The angular velocity stays extremely small but non-zero. The sphere's also don't react at all to force or torque from a controller. The only way I can get them to move is by hitting them (or giving an initial velocity), but then they don't rotate.
The relevant parts of my code are nearly identical to the sample. Any ideas what's wrong?