Here is what the Wikipedia article on Scrum has to say about the Daily Scrum:
The meeting starts precisely on time. Often there are team-decided punishments for tardiness (e.g. money, push-ups, hanging a rubber chicken around your neck).
Do you feel that it is a good practice and what self-punishment have you found effective in the past?
When I've been the scrum master we always started on time regardless of whether everyone is there or not. If people don't make it they miss out - no chance to engage with the rest of the team on their progress and blockers. In my experience, it only takes one or two times for that to happen and the team self polices - people know we start on time, finish on time, and if you're not there you miss out - no punishment needed, it's all done by peer pressure.
BTW set your scrum time the same time every day, and allow for people's work patterns ie - 9:00AM doesn't work for everyone, but 10:00 should do, even better go for 9:50, run for 10 minutes and you don't crash anyone elses meetings.