It also gives reason as to why you get an mask value of 15 as you have a float4 in your input struct. Have you tried changing it to float3 to see what happens?
Have you looked to debug using PIX or RenderDoc?
Awesome tools for these kinds of problems.