You say that you are connected to the 3 vCenters, but that would mean that lines like
Get-View ServiceInstance
return 3 objects.
You could try using the Server parameter to point to the correct vCenter.
On another note, when you run the actual vMotion code alone (not as a scheduled task) does it work?
Blog: lucd.info Twitter: @LucD22 Co-author PowerCLI Reference