Are the values returned from XAnimator->GetBoundingShapes() what you expect? No point in trying to mess with all the matrix math if your inputs aren't what you think they should be.
I don't frankly know what to expect. All I know is that I'm doing exactly what the author of the API is doing except I don't use his debug library (which I don't have) to draw the bounds. I did a number of tests. Supposedly if max bounds of object A is bigger than min bounds of object B, they collide. So I did those kinds of checks and set it to stop movement if it happens to be true. The thing is, my movement stops with any checks I make, except for when I inverse the check (to smaller instead of bigger). I then go to the object in question and bash myself into every wall and the checks don't trigger.
In the full main source code, there are two functions in the complete bottom. I used to use those. The second one I wrote to store the vertex data and draw the bounds myself. Well, the bounds were shifted in one direction, the size of the object (either length or width) was smaller/shorter. Regardless of that, I still did a bunch of checks and after some bull*** I managed to find some checks that made the skele stop when bashing into one wall. Actually, he stopped a meter before the wall from the inside of the object without any parts touching the walls. The only bounds that the function drew correctly were the skeletons.
What I said above, including the fact that those numbers are indeed very strange in my opinion, I deduced that something must be wrong with matrix math or perhaps some fundamental calculations I have there.