I noticed one detail that might be useful.  When I edit a file
 that looks like
 the following from "ls -l":
 -r--r--r--    1 dmkarr   None       248833 Nov  1 20:22 filename
 then editing the file puts it into a read-only buffer, with "%%" in the
 modeline.
 However, if the "ls -l" output looks like this:
 -r-xr-xr-x    1 dmkarr   None         6763 Oct 27 12:25 filename
 then it doesn't get a read-only buffer. 
I expect this is a cygwin or windows bug or feature. You could try playing
around with CYGWIN=nontsec or something like that.
andy