FYI: this also happens for Chinese, so I suspect every non-Roman character set will suffer the same way. Interesting that using Apple's UI controls, or indeed any Core Graphics text rendering, does not encounter this problem, it seems possible to request the system font and render English, Arabic, Chinese and Japanese without any extra effort.
Anyway, thanks for looking into it, I do now have a situation where I need to display mixed language labels without being able to know which labels require which character set, so a fix is slightly more urgent than before, if that makes any difference!