Actually the problem is with the character encoding of the reader for the data-channel.  You can change this using FTPConnection.DataEncoding.  Try setting it to Encoding.GetEncoding("Windows-1252") or Encoding.GetEncoding("ISO-8859-1").  If you get the encoding right then you shouldn't need to do the manual translation that you are doing in the code you posted.
- Hans (EnterpriseDT)