I would guess that roofing services have inelastic demand, meaning that a change in price doesn't affect demand much. A home owner often doesn't have much choice about whether or not to repair their roof, if it needs to be done then it needs to be done.
If that were true, it would mean that a roofer would need to raise prices a great deal in order to reduce demand a small amount. In such circumstances, it would probably be very profitable for a roofer to increase prices. The opposite (roofing has very elastic demand) is probably more likely. Under elastic demand, a small increase in prices would lead to a large decrease in demand. Under those circumstances, a roofer may prefer the certainty of 100% utilization at a slightly below market rate to having to struggle for contracts at the market rate.
Depending on circumstance, they may also be tied to whatever home insurers deem proper for a roof. I'd guess roughly a third of my peers have had their roofs replaced and paid for by their home insurance (storm damage - tree limbs, hail, etc).