CompareText ist ja eine Delphi-interne Funktion, Excel wird vermutlich auf die Windows-
API zurückgreifen, die in Delphi per AnsiCompareText zu erreichen ist. Dort werden dann ein paar fixe Parameter für den Aufruf von CompareString gesetzt.
Ich hatte vor einiger Zeit auch mal ein ähnliches Sortierproblem. Da hat mir der Hinweis von jaenicke in diesem Beitrag gut weitergeholfen:
https://entwickler-ecke.de/viewtopic.php?t=118089
Ich habe mir dann eine andere Version von AnsiCompareText geschrieben, die andere Flags setzt. Vielleicht hilft das bei dir auch weiter.
The angels have the phone box.