Wie wäre es denn, vor dem FormatDateTime durch StringReplace die Formatcodes umzuwandeln? So viele sind es ja nicht...
Nicht so gut, wenn du dir diesen gültigen format-String anschaust
rauskommen müsste durch
strftime
Der passende Format-String für Delphi wäre
Meine Einschätzung: Es ist einfacher den Formatstring so wie er ist zu parsen und direkt die Werte zu ersetzen als diesen erst umzuformen (da muss man auch parsen) und dann durch
FormatDateTime
zu jagen.