There may be formats that "start off as US-ASCII and may contain some encoding mark to switch to UTF-8", but XML is not one of them.
The encoding declaration at the beginning of an XML document or entity is not guaranteed to be in ASCII -- an XML document on an IBM mainframe will typically be encoded in EBCDIC, and so will its encoding declaration -- and the encoding declaration does not direct the parser to shift to a different encoding. The encoding declaration works in practice only because (a) all widely used character encodings fall into a small set of families, and (b) the encoding declaration itself uses only characters that tend (as an empirical matter) not to vary among members of a family. (Thus the octets used in the encoding declaration will have the same interpretation in ASCII, in all members of the ISO 8859-* family, in EUC, in UTF8, and probably in some other encodings as well. The octets used in the encoding declaration of an EBCDIC-encoded document will be readable in any EBCDIC code page. And similarly the patterns of octets to be expected in documents encoded with UTF16, UCS, and other standard encodings can be anticipated and recognized.
The process of deciphering an XML character encoding declaration is heuristic in the sense that it is not guaranteed to work for all imaginable character encodings: we could easily devise a character encoding designed to defeat it. But it works in practice for the pre-existing encodings which parser writers want to recognize because they are in wide use in their user communities.
Some XML-related specs seem to forbid the BOM; my recollection is that this was partly a reaction to some early Unicode software that reacted badly to BOMs that did not match expectations and partly the result of a long, tenacious battle over whether it was better to trust internal labeling or external labeling.
I'd suggest changing the wording to make the point in a different way. Perhaps:
This solves all problems, or ... perhaps not. Some formats rely on internal or external labeling of the encoding, or on system-wide defaults; in such cases, the use of a BOM may be redundant or even forbidden.