I don't think this is a powershell limitation as such- the output from the SQLPackage command is being displayed as you'd expect, so really it's that which is not supplying the output you need to troubleshoot. If you run the SQLPackage command manually, does it give better feedback? If so, it should be possible to capture that.

The only option affecting output I could see (checking here was a /quiet switch which can be true or false to suppress output. The default is off, which is what you have, and there doesn't seem to be an option to increase the detail that is output.

I did not run the ps1 manually but if I ran the command inside the ps1 manually, I am getting a lot more information about the error, ended up being a foreign key constraint that prevented it from running the scripts

My guess would be the full output is still going to stderr and not picked up by the write-host or similar, but I'll need to have a play around to see if I can figure that out (i'm no Powershell genuis!)