You need to do the following:
1) export all mail from Exchange 2003 using exmerge as per my article here:
http://www.experts-exchange.com/articles/Software/Server_Software/Email_Servers/Exchange/Export-mailboxes-using-Exmerge-and-Exchange-2003.html2) Backup your public folders using Outlook.
3) Then use ADMT to kigrate your already existing users/computers/groups to your new SBS server as per:
http://blogs.technet.com/b/sbs/archive/2009/05/01/sbs-2003-to-sbs-2008-migration-to-a-different-domain-name.aspx4) Then import your mailboxes back in to exchange 2007 as per my article here:
http://www.experts-exchange.com/articles/Software/Server_Software/Email_Servers/Exchange/Importing-PST-files-in-to-Exchange-2010.htmlI also have another possible theory but I am still trying this in my lab.
1) Join another 2003 server to the domain and make it a domain controller.
2) Export all mailboxes as per earlier step.
3) uninstall exchange and demote the SBS server.
4) rename the domain (before migrating to SBs2008) to the internal name you want then follow this migration guide:
http://www.experts-exchange.com/articles/Software/Server_Software/Email_Servers/Exchange/Migrate-Small-Business-Server-2003-to-Exchange-2010-and-Windows-2008-R2.html5) then reimport the PST's as above.
Obviously for both scenarios you would need to backup and restore the shared data.