Quoting Tom Lane on this pg_hackers thread:
http://www.postgresql.org/message-id/9699.1262011789@sss.pgh.pa.us
I suppose what you're really asking about is not the precision of the datatype but the precision of now() readings. You're out of luck --- Windows just doesn't expose a call to get the wall clock time to better than 1 msec.
Keep in mind that whatever the Linux machine is returning might be largely fantasy in the low-order bits, too.
To sort out your problem, consider using a serial as the primary key. (Assuming, of course, that you actually need a primary key in the first place for the log file.)