Das Escaping gerade beim Aufruf von Powershell Scripten auf Batch Dateien heraus nervt tierisch. Da immer irgendwas an dem Escaping nicht stimmt. Hier nun eine Lösung, die bisher immer funktioniert hat.

Powershell.exe -command "& 'C:\pfad\zum\script\script.ps1' '%1'"

bzw.
Powershell.exe -command "& 'C:\pfad\zum\script\script.ps1' 'argument1' 'argument2'"

Das & Zeichen ist hier sehr wichtig, weil es Powershell mitteilt, dass der String eine ausführbare Datei ist. Powershell interpretiert den übergebenen String dann ganz anders.