I've tried to reproduce the issue with certificates I've generated but with no luck.
There must be something different about your PFX file which then causes issues for openssl.
As this is a self-signed certificate, I suggest that you generate another certificate.
This is described in the Generating Test X.509 Certificates
For example, the following command generates a self-signed certificate with a 2048 bit key, that's signed using SHA-512 and that specifies the type 24 cryptographic service provider. This is saved into the Windows certificate store for the current user.
makecert -r -pe -sky exchange -n "cn=www.idp.com" -ss My -sy 24 -len 2048 -a sha512
You would then export the certificate from the Windows certificate store as a PFX file using the Microsoft Management Console's Certificates snap-in. Simply run mmc from the command prompt.