Is it in the contract that any changes to the original scope of work might affect the price?
The problem is we don't work out the detailed requirements, functionality, and business logic until after the contract is signed, and that's the time I realize the quote is too low.
if this is the case, only provide a rough estimate. And request 50% or whatever you need down. And let them know that this will be applied to the total amount when done.
In the contract, make sure that it spells out $1,000 is an estimate & not the total cost. The $1,000 might be lower or higher as the work goes on. Plus before the contract is signed - try to finalize the scope of work. I do one or two of these a week. once you get more under your belt - you will be better at writing all of this out & see more additions to the scope as you go along.