Could you just talk to her and be completely honest? Tell her that you want to come from the bottom of your heart, but you think you might not be able to resist drinking if you do, and drinking is "just so bad for me."
Definitely thank her for inviting you, and ask to maybe take a rain check.
BTW, did you end up buying her the birthday gift?