Beim Laden der
DFM wird, wenn die Skalierungsoption aktiv ist, nach dem Laden jeder Positions-Wert umgerechnet, also die Komponenten bekommen die skallierten Werte zugewiesen.
Wenn du nun manuell Komponenten erstellst, dann mußt du das ebenfalls selber entsprechend umrechnen.
Eventuell kann man die Delphi-Skalierungsfunktion für seine Komponenten manuell aufrufen, nach dem Erstellen. (falls sie auf einzelne Komponenten angewendet werden kann und vorallem wenn sie nicht privat ist)
Deine Erwartung ist also falsch, da man die Komponentenposition in physikalischen Pixeln und nicht in logischen Pixeln angibt.
Das ist vorallem krank, wenn man seinen Code versioniert und den auf einem anderem Rechner mit anderer Skalierung öffnet, dann wird die ganze
DFM umgeschrieben, wenn man dort speichert.
Bei FMX mag das eventuell anders sein, da man dort einen Skalierungsfaktor "unabhängig" von den Positionsangaben einstellen kann, also dort mit einer logischen Position.