I responded to
your issue. You're specifying two different character sets for your XHTML files, so any application can load it in one of the two ways. Calibre loads it looking at the XML declaration, Sigil and Firefox load it looking at the meta tag.
All of the applications are correct, since you're saying both encodings apply (which is impossible).
Remove the meta tags, since your file is in UTF-8. Or at least change the meta tag to say UTF-8 too.