A couple of things that might help is to remove the dash character from -$dest and -$src arguments in the update to look like this:
Update-deploymentobject $dest $source
Another thing that you could also try is to specify the directory of your custom.xml because the get-deploymentobject cmdlet when using manifest provider doesn't look under current directory by default. Try something like:
Get-deploymentobject manifest c:\location\custom.xml , instead of only custom.xml.
Also when in doubt omit the "$src =" to see if the cmdlet returns anything first and then if it is working you can then you can put back the "$src =".
Let me know if this doesn't solve your issue,
James