get returns the document as returned by the web server. It doesn't decode the document into text if it happens to be text. By using -C, you are encoding encoded text.
Either
- decode the document (->decoded_content if use you were using LWP::UserAgent) and re-encode via -C (which allows you to convert from the remote encoding to your local encoding), or
- binmode STDOUT (to disable -C and leave the document unchanged)