In my experience the problem with RFC 2047 implementations is usually that implementations try to "decode" RFC 2047 for the purpose of internal representation and then to "encode" again for retransmission, rather than to "decode" RFC 2047 only for the purpose of display.