UTF-8のxmlをXMLString::transcodeでShift-JISに変換すると下記の様に、"〜"や"−"が"?"となってしまうのは解決できませんか?

「お〜い。−100」 → 「お?い。?100」 となってしまいます。

BCC5.5、Xerces-C++ Version 2.7.0 を使ってます。