Here is the short introduction of what the xpacket is in the XMP specification:

"The XMP packet wrapper can enable the use of embedded XMP by software that does not understand the format of the file. The packet wrapper is not the sole aspect of embedding XMP in a file. The entire XMP packet must still be placed in the file as an appropriate component of the files structure."

The XMP sidecar is not "embedding in a format". So the xpacket has no reason to be. That's not what the other app that conform to the standard do either.

The xpacket is plain wrong. The blog post you cite is wrong. Bridge CS2 was wrong. Just read the spec. See also #8403.

The xmp spec (at least since 2005) mandates the xml declataion (i.e. ) for external metadata storage. The xpacket declaration and the xml declaration are mutually exclusive. The former is only used if the metadata is embedded in the file. Embedding is what xpacket is designed for.