lucy24 - 1:23 am on Mar 6, 2013 (gmt 0)
Admittedly it's a long shot, but have you tried simply feeding MSIE 10 the same CSS you would give a normal browser? I don't think the -ms- prefix is the answer. It rarely is, because its very existence requires MSIE to admit that there exist other browsers, and that it's doing something differently from them. Worst case, it may even cancel any preceding code that would have worked by itself.
Check one thing before you tear out any more hair. Fine-tooth-comb the whole code and look for any references to "background" of any kind. All it takes is one white background riding on top of your body background and the whole thing becomes invisible.
Incidentally: Some cursory experimenting suggests that you may get better backward compatibility if you attach the background-image property to the html instead of the body, and set an explicit min-height of 100%. This is only relevant if you've got pages that could potentially not fill the entire vertical area of the viewport. (It's the same principle that kicks in if you've got a bottom-anchored image that has to stay at the very bottom of the window even if you have only two lines of text.)
Edit: The whole syntax is wonky. With a normal vendor prefix you'd expect something like
but here it has to be
even though this means multiple "background" definitions in the same CSS. Don't really like that, but the validator seems to be happy. Well, except for insisting that "top" isn't a color. But I'm sure they will sort that out in time.
Further edit with topic drift: That's a nice shade of green, btw. Or range of shades, I guess. When I first saw color values pointing to a green gradient it made me uneasy. But this is restful ;)