Hmm, I just tried a test and it seems to be working fine. 0/No is selected and when I look at the source in firebug, that input has checked=""checked"" as an attribute. I copy and pasted your code block above into a radio field.
1 : Yes
0 : No
I forgot to mention that the radio button is inside a flexible content field, and it looks like the problem is related to this field. It works fine inside a repeater field and on its own. Everything other then “0” seems to work just fine.