Right now I'm using qt translation system, it handles nicely various plural forms, just like Fluent.
But it requires special code in each message that has "X of Y" to handle the "ze 100" correctly in Polish. It might be done for Polish, because we have Polish developers, but many languages have similar quirks and it's not done for them. And it would result in combinatorial explosion of translation message versions if source code had to add special case for each quirk in each language.
This seems to be a much better solution.