There are 2 things stopping us:
1) CSS-Text-3 says "The UA must therefore only automatically hyphenate text for which the content language is known and for which it has an appropriate hyphenation resource."
Currently, if the content isn't language-tagged, we'll use the system's locale, contrary to the spec
2) CSS-Text-3 says: "When shaping scripts such as Arabic are allowed to break within words due to hyphenation, the characters must still be shaped as if the word were not broken "
We shape text as if the hyphen is the end of the line, meaning the last glyph gets put into its final form, rather than its medial form. Instead, we should shape the entire word, and chop the shaped word in the middle.