I don't see any contradictions or other problems with these two statements/quotes. In my understanding of those statements, perl calls C/system sprintf rarely, further munging the result as it feels fit.
In regards to portability, most languages try to be as portable as possible but are never 100% portable without defensive coding sensitive to the issues. Even such a long ago developed language as C (ANSI C even) has plenty of differences between platforms.
the hardest line to type correctly is: stty erase ^H