Bei UpdateFile wird immer eine neue Datei erzeugt und damit eine eventuell bestehende gelöscht.
Das Datei-Attribut "Erstellt" zeigt immer den Zeitpunkt des ersten Erstellens. Müsste sich dieser dann nicht jedes Mal ändern, wenn die Datei vollständig neu erzeugt wird?
Grundsätzlich gäbe es ja auch noch die Möglichkeit, komplett auf Datei-Operationen zu verzichten und in UpdateFile per 2xSaveToFile stets in zwei Dateien zu schreiben. Bricht der Schreibvorgang beim ersten Schreiben ab, ist die Original-Datei noch vorhanden. Bricht der Schreibvorgang beim zweiten Schreiben ab, ist die Backupdatei bereits erstellt worden.
Das würde den Aufwand quasi genau verdoppeln. Ob das jetzt viel mehr als die Löschen/Umbenennen/Erstellen-Varianten sind, mag ich nicht zu urteilen. Auf jeden Fall können sich dann keine Probleme durch Dateioperationen ergeben.