This bug is still present in OS 10.11.5. I just verified it on an NTFS partition shared by a Windows 7 machine.
Similar behavior: the cp -a command fails to copy the modification time, but other methods, e.g. Python shutil.copy2, work.
An interesting mal-feature: the modification time is initially set correctly but later reverts. E.g.,
$ cat cpTest
#!/usr/bin/env bash
cp -a resort.py resort2.py
for i in {0..60}; do
echo After $i seconds ...
ls -lT resort*
echo
sleep 1
done
$ ls -l resort*
-rwx------ 1 Billy staff 2423 Feb 9 20:52 resort.py
$./cpTest
After 0 seconds ...
-rwx------ 1 Billy staff 2423 Feb 9 20:52:09 2016 resort.py
-rwx------ 1 Billy staff 2423 Feb 9 20:52:09 2016 resort2.py
After 1 seconds ...
-rwx------ 1 Billy staff 2423 Feb 9 20:52:09 2016 resort.py
-rwx------ 1 Billy staff 2423 Feb 9 20:52:09 2016 resort2.py
After 2 seconds ...
-rwx------ 1 Billy staff 2423 Feb 9 20:52:09 2016 resort.py
-rwx------ 1 Billy staff 2423 Feb 9 20:52:09 2016 resort2.py
...
After 28 seconds ...
-rwx------ 1 Billy staff 2423 Feb 9 20:52:09 2016 resort.py
-rwx------ 1 Billy staff 2423 Feb 9 20:52:09 2016 resort2.py
After 29 seconds ...
-rwx------ 1 Billy staff 2423 Feb 9 20:52:09 2016 resort.py
-rwx------ 1 Billy staff 2423 Jun 5 20:01:18 2016 resort2.py
Is that not perverse or what?
BTW, I also tried it on the same share mounted on an Ubuntu 12.04 system. No issues. Moreover, Ubuntu copied the whole timestamp, instead of truncating the deci-microseconds, as OS X does.