It's missing a mission statement, or use case.
The intro says it's used to avoid inconsistent formatting, but there exists other message formats.
The body field is application specific, which introduces an area for inconsistent formatting and reduces the interoperability, or universalness, of the message format.
The destination doesn't need to be in the message, most of the time the destination is implicit in where the message is sent. (If I send a UMF over email the destination would be in the email metadata and the UMF metadata)
The total amount of metadata that would be included in a UMF message sent over TCP/IP would be silly.
There are arbitrary and undefended specification decisions. The transport protocol is left ambiguous, but both the schema and the format are specified. The metadata around body is very standardized, but anything goes inside body, which is the primary payload.