Does PDAC also return an empty string? If not, how does it fail?
Also, with the ADO components are you using OLEDB or ODBC? Have you tried the other?
If v10 works but v9.5 does not, I would suggest patching to v9.71. If that doesn't work, then it was probably just broken and won't be fixed. Upgrade to PSQL v10 (or even better v11).