Maybe multiply 0.004 by 25.4?
I went through my book and could not see a reason your code wouldn't work. Do the jog functions act normal? I don't see any way that it could lock into metric mode unless a parameter is set wrong.
EDIT: Take a look at parameter 910, bit 7. I think this should be set to 1 This should be thread cutting and synchronous feed option