No, I don't think JDocument::setMimeEncoding() should likely work with
the new classes as it was built for a differently structured class and
application configuration (the JResponse class). It should likely
continue to do this at least in the short term otherwise the CMS will
break. As I noted, JDocument was built for a different version of
JApplication. JDocument's future is an interesting question however I
really don't think it's use coupled with the new JApplicationWeb class
is intended or advised (though obviously not impossible, there is just
an overlap between what it expects and reality for your new
application).
JApplicationWeb::setHeaders() is working though I think if you look
carefully you will find that effectively what you're instructing the
app to do is send two content type headers. PHP if it isn't passing
that along will be picking one of them and sending it. The intended
behaviour is that you set the variable in the application and it is
handled for you.