Canonical map problem

Hello,
i have a problem with multi domain server.
Every time I send to me a email from a virtual domain I receive user@primarydomain.com instead of user@correctdomain.com
I have tryed canonical mapping and it works only for user don’t appair with the same name in both primarydomain and correctdomain…
Canonical maps file look like :
john user@domain.com

If user john appair in both domain i get no email.
I have tryed john.domain and john@domain insteat of simple john but it don’t work
any idea ?
Thank you

If i buy Virtualmin PRO i still have this problem ?