Skipping reading all the stuff but your initial post...
I find that sometimes it pays to call them. It happens with relationships often too: why didn't you call me? Oh, I was waiting for you to call. Or they forgot completely, etc. Giving them a call might result in them going Doh! Forget, be right over! Or, I'm in the emergency room waiting for my sister to come out, or something important that takes precedence.
This way, it shows that you have interest in them being there to have a good time and that their character is important to your game. Additionally, they'll be more likely to remember the next time.
Now on to the game stuff:
Often times, it's a good idea to keep a copy of your players character sheets if one of them doesn't show. Sometimes I'll NPC the character, or ask another player to do so. Some people penalize the players of these characters by reducing the XP they receive, but since it's a game, and often times I want the characters around the same level, I don't.
If a bunch of people don't show, I'll cancel the game and just hang out with my friends who I game with.
I guess that's all.