
By "do the job well" do you mean ease of use and effort or what individuals produce due to lack of competence!
By "do the job well" I mean having features that are well-matched to what book coders actually need to code
So, what it comes down to is the lack of good tools.
Well, I guess a "good tool" could mean for arguments sake a portable cross compiler which takes say a subset-superset variation on "HTML" which is well-matched to our coding tasks, and which cross-compiles that code to four different flavors [of "HTML"]: 1) "Standard" HTML for HTML desktop browsers, 2) "HTML" for EPub devices, 3) "HTML" for Mobi (for Kindles), 4) and to Txt70, for, well, I'm not sure who actually uses Txt70 anymore. Where #2 is actually the need for the entire EPub source file set, and #3 is probably best implemented by creating a Mobi-flavored variation of the "EPub" source file set [which Kindlegen then can generate a mobi file from] Part of the problem is that "HTML" is interpreted pretty differently by the major HMTL desktop browsers [to the extent they even agree] than by EPUB devices, which have two major flavors -- Adobe-derived vs. Apple -- which in turn is interpreted pretty differently than Mobi devices (which in practice nowadays means Kindle devices) I am not wedded to "HTML" -- its just that we [in theory] have good cross compilers for it, people "know it" or at least *think* they know it [for better or for worse!] and there are a zillion tools and books for working with it.