LaF, I am doing a lot of this right now with clients and colleagues.Before you contact them have a little heart to heart with yourself. What that person thinks about you does not define what you think about yourself. Not in an arrogant "I don't give a sh!t what you think" sorta way, but in a confident sincere way at admitting your flaws and seeing if they still wish to have you complete the work. You are doing this for you, as much as for them.
Not to be contrary, but I would not offer a discount. Discounts do not make up for poor service. Think about the last time someone was rude or unprofessional to you, would you feel better about the experience if they gave you money? Your work is worth what it is worth.