Hebrew Diacritics Positioning Error In Writer

I’m using FontForge to create a Hebrew font that supports advanced diacritics, i.e. distinguishes between sheva naḥ and dagesh ḥazaq/qal. The Unicode symbols for sheva and dagesh represent the latter, while an unassigned Unicode space is used for the former (I also expanded the glyphs’ stroke width to make the distinction visible).
Within each set, both marks use the exact same anchors, so in theory, they should be positioned at the same place. The metrics window in FontForge shows what it’s supposed to look like (sorry, can’t post image directly): Metrics Window
But Writer misplaces the custom characters:
LO Writer
I already made sure the problem isn’t caused by the increased stroke thickness, and all four glyphs are assigned to the “Mark” class in the glyph info. Moving the unassigned characters across Unicode blocks (from “Hebrew” to “Alphabetical Presentation Forms” or into the “Private Use Area”) didn’t help, either.

EDIT: Assigning these glyphs a location defined by Unicode as a Hebrew mark gets rid of the problem. But placing it in “Combining Diacritical Marks” doesn’t. It seems like all code points, with a few exceptions, are hardcoded to be treated as a letter, not a mark, in LibreOffice. Any idea how that works and how to override it (as I don’t want to use an “incorrect” Unicode character for my custom glyphs)?

Maybe it is ask for a FontForge Ask, but what to take some functional Hebrew Font and look to the GSUB and GPOS definition in FontForge. Maybe you need define the ligatures for characters with diacritical marks.

Thank you! I’m definitely going to do that. But the sheer number of combinations makes it impossible to use ligatures. At least in theory, anchors are the best solution, and as far as FontForge is concerned, that works. But the issue is not exclusive to LibreOffice (some testing revealed that it also occurs in Notepad++), so I guess I’ll mark this as solved (I already opened a query on the FontForge GitHub site).