I have the same problem. Some messages get through, while others don't. Also, today someone commented on a photo of mine, I got a notification but didn't click on it, instead I went to Facebook manually to see the comment. The notification stayed there for a day and it would only go away once I actually clicked on it, even though the notification was already "seen" by me on Facebook. This is extremely stupid.
It's very confusing and I'd rather check Facebook manually if this is so unreliable. I'd like to be able to trust it so that I don't have to check Facebook, but apparently that's impossible.
Can't it just mirror Facebook's red badges? How can they get such a simple feature this wrong???