It's been some time since I've been there, but the weather was pretty awful, so I did wrecks one day, which were fun, nice dives, but unremarkable. We tried one dive on Isla Mujeres that was just awful (visibility).
Then the next 2 days, since the ocean was so bad, I was introduced to cenotes. I could go back and spend a week diving those. It's a pretty unique experience, especially if you have any cave or wreck training and can dive some of the more technical cenotes. Even if not, the more accessible ones are still quite spectacular.
three weeks should be great! Hope you post back with any sites you hit and what was good. I'd be interested to hear. Have fun!