Okay, now look. I'm not sure whether I do understand it right, but...
When a phone receives a message, the messaging application analyzes it and sets an EVENT(new.mesg or so) (not sure about the exact mechanism: does it just set the EVENT or sends directly to the notification daemon). The EVENTS are monitored by various applications. Ideally the notification daemon sees that EVENT and creates a notification based on its information (senders name, text or so).
NOW what if some other application steals an EVENT? in that case the notification daemon has nothing to show (since it receives nothing).
What I am leading to is that some applications may ?steal your message? and set its own EVENT (and what if it is not meant to be set?). Just like Go SMS does.
I had this problem (not notifying abt new messages) for a while and started to think how all that machanism might be working. I came up with this idea and.. removed Go SMS app. And that's how my problem was solved. Now I have both: auditory and visual notifications about new messages back