A roofing company can afford any of those options. You really have to decide how much you want to make. The commission part isnt really applicable because its the estimator/salesperson who is actually determining the sale.
If you do the greatest job ever booking an appointment and a 10 year old child shows up to do the estimate, you and the company wont be getting the job.
I would charge at the higher end of the appointment because at the end of the day, LEADS are gold if you have good sales people but many people would find it insulting that an appointment/lead gen wants a portion of profit. I was approached by a company offering to do that, and it didn't make sense to offer a partnership in my business simply because they got me an opportunity.
Everyone can provide an opportunity, to one degree or another, but its what you do with it that matters.
Once simplified down to that, well it really comes down to:
1. How much do you want to make?
2. How much does it cost you to generate a lead?
I would say try to double your money, if you are booking a 2200 appointments a week. $100 per estimate appointment is fair. A roofing company closing 1/3 can easily build a business around that model.