I've been running DKIM for a few years for several customers and because this feature had never been present in cPanel. For my DKIM domains I route all outbound mail through a private postfix relay VPS (through an SSH tunnel) instead of using cPanel to send mail.
On my the private relay I had opendkim doing the signing of the outbound mail and had the DNS records setup in WHM. It worked really well.
I realised that there were now some DKIM options under "Email Authentication". So I enabled DKIM on my personal test cPanel and my existing DKIM records in DNS appear to have been replaced. Without warning.
I assumed that the "Enable" button would provide further options to enable it on a per-domain basis and provide the private keys.
Not that it would enable it globally for all domains in that cPanel, overwriting any existing DNS records.
The reason I assumed that it wouldn't overwrite the existing DKIM DNS records is that there's an checkbox to "Overwrite Existing Entries" in the SPF section directly below.
You should be able to enable/disable DKIM on a per-domain basis through cPanel.
You should be given an option to overwrite existing DNS records, making it consistent with the SPF options on the same page.
An ADSP DNS record should (optionally) be created per RFC 5617
Anyone else discovered this the hard way?