It depends on which state you are in.
For late fee, if there is no contract, or not specifically stated in the contract, you don't have to pay. However if it is clearly stated in the contract, then it is really hard to argue, even if they waived it the first time.
For repair, it is completely a different issue. It is not as clear cut. You may get the full refund if you are willing to spend the time and file a claim.