The thinking behind this logic is this
We've detected the file is the same size but has a different modtime.
Let's try to avoid an expensive copy by comparing checksums first and if the checksums are the same, just update the modtime.
I take your point that on a local -> local copy this is perhaps counterproductive as making checksums for the source and the dest is probably about as expensive as copying the file.
This algorithm is explained several times in the rclone docs, but not where anyone would look for it, so I think there is definitely room for improvements in the docs.
Perhaps we could detect your initial problem of needing a --modify-window
flag a bit better. We work out the modification times by writing a file in the temporary directory and reading back its modification time and I don't want to do this to the source & dest of the sync.
However we could be a bit clevererer in the sync itself. If we detected that the difference in modtime was less than one second and that one of the modtimes was rounded to a second boundary whereas the other wasn't then we could output a warning.
Alternatively we'd detect if the file system we are reading/writing is a VFAT file system and set its precision accordingly. Do you know an easy way of doing this on Windows? ideally we'd be able to read the precision of the timestamps.