The page has no idea what languages it is or isn't in, the lang= attribute is purely an item of metadata and is completely ignored by the browser.
Your problems all revolve around encodings- it's possible that your browser thinks the page is in an encoding different from the one it's really in.
Fix that and it should all work.
At least, if you're using an encoding which includes all the characters from the language(s) you need to support (hint: Use utf8)
Mark