Das ganze hat afaik nur eine auswirkung auf manche
API-Sachen wegen der BOOL-Boolean-Inkompatibilität.
Äh, ja genau darum geht's ja hier. CopyFile will einen BOOL und eben keinen Boolean. Ich wage einfach mal zu behaupten, dass das die Ursache für das Nicht-Überschreiben ist.
Übrigens empfehle ich, die Funktion Format() zu benutzen, um Pfade zusammenzusetzen, denn solche String-Zusammensetzungs-Orgien sind überaus unübersichtlich. Weiterhin empfehle ich, davon Abstand zu nehmen, Standardpfade aus Umgebungsvariablen zu ermitteln, denn dafür gibt es passende Funktionen (SHGetSpecialFolderPath und wie sie alle heißen); das schließt auch das bei dir hartcodierte Verzeichis "Documents" mit ein.
MfG Dalai