Not explicitly setting UTF-8 encoding on the pipe filehandle will give the, "Wide character in print" warning.
Data should always be encoded when leaving the prog, but there's really no way to know what to encode *to*, so you have to guess. I'm guessing that the sendmail command can deal with UTF-8 encoded data, but I don't know for sure. I think that's what I'm asking.
I'm not sure what you want me to look at in this post:
http://perlmonks.org/?node_id=692745 as it's actually been deleted and has some serious bugs in the example code anyways, and shouldn't be used.