Change the order of the utime() and the chmod() call in copystat().
This doesn't make a bit of difference on Unix, but apparently on
Windows NT you need write permission before you can set the utime...
diff --git a/Lib/shutil.py b/Lib/shutil.py
index a248c6e..b44a069 100644
--- a/Lib/shutil.py
+++ b/Lib/shutil.py
@@ -36,8 +36,8 @@
     """Copy all stat info (mode bits, atime and mtime) from src to dst"""
     st = os.stat(src)
     mode = stat.S_IMODE(st[stat.ST_MODE])
-    os.chmod(dst, mode)
     os.utime(dst, (st[stat.ST_ATIME], st[stat.ST_MTIME]))
+    os.chmod(dst, mode)
 
 
 def copy(src, dst):