I asked Brian Wellington, the author of dnsjava and one of the
authors of Bind 9, why the TXT escaping is going on. You can see the
exchange here: https://sourceforge.net/forum/forum.php?
thread_id=1314975&forum_id=57043 (you should note that he points out
that dnspython does to escaping, just not the semicolon).
But the basic answer is that it is done out of tradition and convention.
Perhaps next revisions of the draft should warn implementers that
some libraries tend to escape certain characters in TXT records, and
that those characters are commonly the semicolon, the backslash, and
the double quote.
As for sys admins, I don't think a note in the draft is gonna help.
If the plan is to transition to another RR type for the long term
then perhaps this is no big deal. If it is not, then perhaps some
thought should be given to finding another escaping mechanism.
-andy