AFAIK DMARC will work properly if and only if both SPF and DKIM are properly configured. What actually DMARC does is to tell the receiving server what to do when SPF/DKIM checks fail, and how to notify you.
Of course with p=none if SPF/DKIM are not (properly) configured messages will still be accepted. Using "quarantine" or "reject" need a fully working setup. Usually "none" is used in the beginning to monitor DMARC/SPF/DKIM are correctly configured, then "quarantine" can be used. "reject" requires very strict setups and mail policies to ensure messages are not bounced.
Third party bulk email system will of course have issues, but that's another good thing about DMARC.