I have my phone set to vibrate when I get a new email (Gmail) and it works fine. However, when I read an email on my computer such that the email becomes marked as "read", my phone vibrates as if a new email has arrived, but it's not a new email, it's just that the email has changed state to "read".
I believe it's a bug in the app if you don't have "Notify Once" checked. To check your settings, load your Gmail App then Menu > More > Settings > choose the Gmail account (firstname.lastname@example.org) > Labels to notify > In box. If the Notify once box is not checked, then check it and see what happens. It should fix your issue, but the side effect is you're phone will only notify you one time for any new emails. If you read those emails and/or delete them, you'll get another notification, but not if you have emails waiting to be read.
I hope that makes sense. There may be another way around your issue. Since this is App related, there should be information out there on Google.
Thanks for the info. I do not have the "Notify Once" checked, but as much as it bugs me to have it notify me when a message is read, I like getting the notification for every new email. Oh well. I think I'll ask over on one of the gmail help forums as maybe this is a bug.