This looks like it's not a bug in the PlayDate SDK.
Thanks to rkjr2 on Reddit.
It seems that this is a feature of Lua. Lua handles Unicode with all the grace that a whippet handles a squirrel.
The Lua documentation says that you need to use a special set of functions for handling unicode characters. It looks like a bit of a nightmare.