@sonicskye, I think your tx is failing the "minimal push" check.
it's some crazy stuff that (I think) is supposed to prevent tx malleability - don't ask me about it

but what you have to change is the place where you push value 10 onto the stack
instead of using {0x01, 0x0a}, you should use a single 0x5a (OP_10)
plus, as it was said before, you need version 2 or more - then it will work.
Thank you for your reply. I have rechecked my script and it uses 0x01 0x0a instead of 0x5a.
Just to make it clear, according to Bitcoin Wiki (
https://en.bitcoin.it/wiki/Script), does it mean if we need to push numbers from 1-16, we shall use OP_1 to OP_16?