First, you have to make sure you have MX records set up correctly for each domain. This does not presently look to be the case. If you need help on that, I can advise. This is, BTW, the *last* thing you want to do, because once you change that, your present email settings will start to fail to work.
Second, you need to make sure you have incoming access to your server. If you are using some sort of router or firewall, you need to set up port forwarding on port 25, to your server. If you want POP3 access, so people can check their email from outside your local network, you need to do the same for port 110.
Then, you need to set up Mercury. In the Configuration menu, go to Mercury Core Module. On the Local Domains tab, add in all the domain names you want to receive mail for.
Then, on the Configuration menu, go to Manage Local Users. Here, you can add users.
Note that Mercury does not support true virtual domains. That means that
joe@domain1.com and
joe@domain2.com are the same local account. You can work around this by defining an alias that points to different local accounts, so
joe@domain1.com can point to local user joe1, while
joe@domain2.com can point to local user joe2. The Alias stuff is also on the Configuration menu.
Also note that Mercury does not run as a service, even on Microsoft server systems. That means the computer needs to be logged in for it to run. There are ways to make it work as a service, such as ntwrapper, or svrany, but they're all a kind of a pain in the butt to make work.
If you need a mail server to run as a service, or true virtual domains, I'd recomment you use hmailserver instead. It's also free, and in some ways superior to Mercury. Only reason I don't use it is because Mercury lets me write outgoing mail directly to the que directory from PHP without having to use SMTP.