The most likely reason for this problem is that the DNS at your ISP is not updated to reflect the changes in Internic (or other NIC) database.
It normally takes 2-4 days to propagate the new DNS information and clear the DNS cache. This time depends on the TTL (time-to-live) settings for your domain at your previous host and the time when the DNS entry was cached.
Sometimes, it takes more than 4 days if the TTL was set unreasonably high by your previous host. In some cases it may take as long as 7 or 10 days to clear the cache.
During this period the mail and HTTP requests may be coming to either the old or new servers. There is no control over it and nothing can be done to speed up the process.
You can verify this by using the NSLOOKUP tool. By default, it will get information about the domain name from the local DNS server. Then you may change Name Servers to root servers and compare results.
If this is not the case, and it has been more than 7 days since the domain record was updated, contact your ISP to solve the problem.
Read the Knowledge Base article on What Is DNS Propagation? for more information.