I think it would be very convenient if we would be able to switch off "preserve timestamps" for Synchronization, even if it's done by timestamp comparison.
I've researched this a bit and found this reply from a few years ago: https://winscp.net/forum/viewtopic.php?p=15116#15116
It says synchronization won't work if the feature is disabled. That's why it's enforced. However, my server won't let me modify timestamps (because my SCP user is not the file owner). Still synchronization works perfectly (for me). Of course, if I get a local file that is newer than the last sychronized version, but older than the last sychronization, this file won't be synchronized. But this really never happens for me. So I would benefit a lot from disabling the feature, because this way I have to sit there through the whole synchronization process and click "Okay" over and over again.
So basically I'm making a case for the fact that synchronization by timestamps DOES work (for me) if I can't preserve timestamps.
Switching comparison criteria from timestamp to size is not an option, because fixed typos won't be synchronized, and sometimes I already have a newer version on the server, that differs in size from the older one... so just checking size would overwrite the new file.
I'm aware that disabling this feature might stop synchronization from working in 100% of the cases. But it would still be nice to give the user control over it, because the few exceptions don't affect me (and I imagine a lot of other users). Throw a big red warning if "Preserve timestamps" is switched off and people want to synchronize by timestamp - but please make it possible! :)