So for example 'Calibri' doesn't support the checkmark character (U+2713), but Publisher automatically substitutes it with another font that supports that glyph -- for me, it is 'MS UI Gothic'.
Of course, one may argue that using 'fake glyphs' implicitly is not necessarily the desired way to handle missing characters, but I think it is the expected behavior here.
Problem:
These unsupported-but-substituted characters temporarily become 'unknown' characters after using the Update Character Style function.
Creating the problem:
New document
Frame Text Tool, text:
some text [checkmark character]
font: 'Calibri', though the [checkmark character] character implicitly becomes 'MS UI Gothic'
Choose a character style (e. g. the built-in 'Emphasis' style)
Modify the style of the text (e. g. increasing the font size)
Update Character Style
This is the result:
some text [question-mark-in-a-square character]
If I export it to .jpg or .pdf, it remains the same.
Workarounds:
If I save the file, then close, and reopen it, everything is good again.
An easier way: Text menu -> Reapply Text Styles.
[Windows 10, Affinity Publisher 1.7.0.399]