This is a great point and there are a few ways to go about it. There are 2 ways we handle this.
First is that we have a clause that excuses us during times of inclement weather such as to allow for reasonable time in addition to the contract dates that were laid out. IE: we do a job, the lawn needs final repair, the contract says we are to be done within 3 days. That night it snows 2 feet, rains 5 inches, whatever and it does not melt or dry for a month. We are excused and allowed to return after the conditions improve to finish the job. Without this clause not finishing and not having a weather statement would with a jerk client lead to problems such as possible breach lawsuit or expected discounts. At the least a disagreement since you all know we can actually control the weather.
The second thing we do is address our final payment in terms related to this final seeding. IE: We may have 5 draws during a job. $5000 for this & $7000 for that, $5000 when plants are brought on sight, $3000 when the mulch goes down, $1000 for the final lawn repair. The lawn repair is always the last thing and the amount is directly related to the topsoil, seed, etc directly used for this final repair. So with the above weather statement we can be paid fairly for work completed, we have protection from knuckleheads, and should the ground not heal till spring we are able to sleep at night without being upset that the client is holding $5000, 50%, whatever the amount, when all that is needed to finish is a few hours and minimal materials just that you can not get the weather to break.
The plus side is we do not do too much ground breaking in mid winter if at all. This really has only ever applied in late fall and early spring jobs. I could not even imagine getting a call in December/January about a client wanting a patio installed before spring. That would be the last thing on my mind as homeowner, but we are colder and snowier up here than a lot of you guys.