Attendance is a big issue where I work too. I find it mind boggling that the number one reason people get let go is too many tardies/no show. I work for a huge, household name company with decent benefits/pay/bonus structure and people constantly screw it up for themselves. In this economy, I cannot fathom why some people are so irresponsible with their careers...
To echo some others, strict policy is the way to go. It can be kind of harsh but you can also weed out the bad apples early on.