In cPanel you can trasfer accounts to your own/another server,
including all settings like mail, ftp, cron ect.
It works as follows:
I log in to the webhost manager of my cpanel server.
I transfer accounts; I can choose between downloading the account via cpanel or via another server.
I choose for download a account of an other cpanel server.
Give the IP, username and password and click on transfer this account to this server.
Now the other server will make a complete backup of this account.
the (new) server will download this backup, unzip the backup and install it on the new server.
It will also change the dns settings to the new server.
Now I have to change the nameservers of this domainname in the domain registrar in order to have the domainname directed to the new server.
It's really easy in cpanel to transfer accounts to another server.
You can also transfer all accounts to a other server with the root access.