I'd rather see you use a New Task for a hand raise than create duplicates, but if that's working for you...
Unfortunately because you have dupes, Marketo has to choose a record. And it will only choose the record that matches the behavior trigger or smart list. Just because it has a dupe email address means nothing....they are effectively different records with different ID #s.
So if your leads "bob@company.com" has 1 Lead and 1 contact he may have a munchkin cookie tagged to his Contact ID and Email Address.
If he clears his cookies and signs in again, he may get tagged to the Lead or the Contact. I never did find out how Marketo chooses. I'm fairly sure the OLDER record gets preference.
The next step is if your Interesting Moment fires off when Bob signs up for a webinar. That can only be tagged to one record. The other record never qualified for that Interesting Moment campaign, even if the email is the same.
Likewise, let's say the dupe has several fields filled in, the Contact is missing Industry. So you send an email to all records with Industry = Construction. Bob's Lead record gets the email. He has no idea he has a dupe. When he clicks on that email, he's now tagged with the Lead ID instead of the Contact's ID. So you'll now see his behavior on the Lead.
When you convert the Lead and merge with the existing Contact, all that data will be joined together.
So if you are creating dupes, you'll never have all of this in one place.