To be fair to authors of those third-party libraries, some of the blame has to do with browser quirks, and for a rich text editor, bugs in the implementation of content-editable that have to be normalized across all browsers (unless you pull the engineering-heavy route of rewriting everything in canvas).