Why did my email provider ask me to create a CNAME?
Because it lets them hold the key material instead of you. Most providers delegate DKIM by CNAME: s1._domainkey.yourdomain.com points at a name they control, so they can rotate the key without you touching DNS again. Bounce and tracking subdomains work the same way. DKIM selectors explained covers the naming, and the DKIM checker shows the key that ends up published.