Sorry, when I implement language negotiation I interpret "en-US" as lack of preference.
The problem is that en-US is the default and I can't tell difference between user not setting language and user choosing en-US.
Add "en" or even "en-GB" to your Accept-Language header.