Does your batch file require any sort of user intervention? If so, why not run it as the local system account?
Verify that the "Choose the script operating system" is set to Windows on the first screen, script run location is On the client computer, Client run environment is Production. What if you run it in the default security context (local system account)? Also, what status do you get when you try to run the script?
I have a Silverlight 4 install job that does something very similar.
The job consists of three tasks: Run Script, Copy File To, and Run Script
The first Run Script task is running and msiexec uninstall for the previous version of Silverlight as local system account. The Copy File To task is copying the necessary install files to the Windows\Temp folder using our Altiris service account credentials, and the last Run Script task is running msiexec to install Silverlight as the local system account. No problems over here doing that.