I have read I should encode my ampersands as &
in HTML.
However numerous code samples from respected companies somehow forget
Is there any real benefit from not escaping ampersand in links?
It saves a few keystrokes.
Is this related to browser quirks?
No
Is this just a mistake in documentation?
Yes
Is there a reason API documentation by respectable companies often violates this rule?
Ignorance and/or laziness. Browsers perform error recovery so they either don't notice the errors or they don't care. The documentation probably isn't written by their best experts.
Two different contexts here.
In the HTML link context an HTML character entity will be decoded before the address is passed to the HTTP process; a URL-encoded character will not, as the server can read it directly.