I do something similar, in D3D11 - differences are:
-- using XMFLOAT4X4 for the matrix variable format -- loading to XMMATRIX and transposing with XMMatrixTranspose before storing back to XMFLOAT4X4 and mapping to cbuffer -- not using packoffset in the cbuffer declaration -- register(cb0) instead of register(b0) for the cbuffer
I'll look closer at what you did later, but those are differences I've found and mine works fine..
Also, your PIX doesn't exactly show the problem, for me - are those cbuffer variables in the debugger not reasonable? they're definitely not zeroed out or something.. in what way are they wrong?
Thanks, I'll try that out.
About the PIX thing, I am concerned about the pre and post Vertex shader thing, shouldn't the post Vertex shader output be equal or at least similar to the pre Vertex shader output?