Das sieht mir arg nach einem Zeichensatzproblem aus.
Sorry, leider kann ich dir nicht helfen.
Problem an der Sache ist evtl., dass PHP mit einem anderen Zeichensatz arbeiten als Windows und/oder der Apache. Ich hab mich schon etliche Stunden mit solchen Zeichensatz-Dinges rumgequält.
Letzten Endes hab ich mein System auf komplett UTF-8 umgestellt und dann gings.
Allerdings alles unter Gentoo-Linux.
MySQL spielte da auch noch ne Rolle.
Verwende einfach keine Sonderzeichen in deinen Path- bzw. Dateinamen.
Ein StringReplace (sPath,'Ä','AE' ... ) hift vielleicht schon.