>>A second level domain cannot be a CNAME record (note: unless you are authoritative for the TLD itself).
It is technically an RFC violation to do this, but that doesn't mean you can't do it. My DNS provider allows it and I use this method for several domains.
The problem with indulging RFC violations is that then you're married to whatever configuration is currently working. The future is uncertain, and if you someday run into a use case that breaks (several of which are mentioned in this article), or want to switch DNS providers, you'll find yourself constrained.
The last two points are pretty weak. A CNAME results in an extra round trip to the DNS server, even if it does reduce the packet size. What the author did not explain is that some DNS servers can preemptively send the reply to the CNAME target along with the result, avoiding that extra round trip. You can see this for example with www.google.com. However, Google returns only one CNAME (www.l.google.com.) and it does not seem to vary over time or location. My sample size is admittedly quite small. On the other hand, one could just as easily skip the CNAME altogether and return only as many A records as will fit into a packet.
The GeoDNS section didn't even attempt to link the feature to the article's subject. Presumably the complaint was that it is harder to delegate the 2LD to GeoDNS, but Google manages to do this as well. When squeezing out every last millisecond of latency, you could do worse than to imitate Google.
It is technically an RFC violation to do this, but that doesn't mean you can't do it. My DNS provider allows it and I use this method for several domains.