You should look at the return values from IO::Socket::SSL to see if you are getting any error messages from the socket layer.
If the connection works OK, read from the socket to see what messages the registrar is sending you back. If the fields have errors in them, maybe the registrar is sending you an error message.
Comment on Re: Problems with sending data over Socket SSL