I am having this exact same problem, but don't understand how you implemeneted your fix.
Where are you adding 'utf8::downgrade' because when I add it to the data I send as the username to Net::SSH::Perl it sends the data as '1'.
I know this is an old thread but hopefully someone will know what I need to do to fix this.
Thanks