Stay in Charge.
Everyone wants to be the cool friendly raid leader. You want to be friendly and firm and unfortunately, you cannot always take what they give.
Many times during a raid you will get derailing comments. "Repairs too high", "I can't take more wipes", etc.
Whatever the reasoning behind complains or thoughts, you can always politely offer them the opportunity to quit raiding even if it means they won't be invited back.
Schedule raids and schedule them consistently.
Most raiding needs to be on a schedule. Yes, in today's game world, people are so busy that sometimes they can't make a schedule. The problem here is that you can't let one individual drive the show because as many as 29 other people are affected.
So, pick a raid time and unless you can get major agreement from the core players, don't change the schedule.
Then, when you recruit, recruit knowing when the raid schedule will be.
The show must go on (or at least attempt to go on).
If you don't get the numbers, fill in the gaps. It's a skill to know what you need and how to get it by trolling the "looking for group" channel or trade channel. Try not to hold the show for any single player if at all possible.
Members are tolerant but by accepting tardiness you will be accepting it on a regular basis and raids will never start on time.
Don't wait for folks to be ready.
If your guild members are all goofing off at raid time, it means they don't respect the time of the other members in the team. You may have to just say that if you didn't let the raid lead know in advance you'd be late, doing your dailies while the guild is downing trash is not acceptable behavior.
Don't ask, plan.
People will say no, rarely say yes. You plan it, if they want to come they will sign-up. However, you might have no one if you plan dull stuff.
Keep Attendance
The best way to understand your raid team is to know when to expect they'll be there. You can't know this without keeping a record.