A canonical is one of the signals that Google uses to decides which page to index and show on the SERPs; because of that, they can decide to ignore it if the other signals point to another page that appears to be a better match.
The signals they use for this:
Link rel canonical annotation that matches throughout the site
Internal linking using ...
I've been apprised that the DNS entries above won't work because you can't CNAME a naked domain to a subdomain. Is that correct?
Yes, as stated in comments, you can't create a CNAME record on the domain apex, ie. example.com. Trying to do so can cause problems later.
You would typically do this the other way round. For example:
example.com. A 14400 ...
Since it's only temporary, you should use 302 redirect instead of 301. But my advice is don't use auto-redirect, but inform the visitor in existing/old website to try a new platform with a popup every visitor visit it or something else.
My worry is that all new content will be indexed against a subdomain
Why are you worrying about it? I don't see any ...
If you are using CloudFlare purge cache and switch to development mode.
Some cache plugins can do redirects as well. Better empty the cache directory.
Theme plugins might have some weird issues as well.
Making a backup and deleting plugin directories one by one can help to find bad apples easily. (In case the logs aren't helpful.)
Maybe this saves some ...