I don't think she's a flake. I think she simply doesn't consider you a friend. The gift and the lunch weren't important to her because you're not a friend ... you're "just" a coworker. And work isn't a priority to her until/unless it's her own job on the line.
She comes running to you because she knows you'll help her clean up her messes. Because she knows you value your job and your company and your coworkers.
I wouldn't make any more plans with her. No more exchanges. No more lunches. No requests of her. And stop helping her with her job unless it affects your own bottom line. Let her succeed or fail on her own.
"I'm sorry, Bertha, I have a lot on my plate this week and I have a deadline. I just can't take anything else on."
"But I need some help to get this finished."
"I know. I hope you can figure something out."
"I was hoping you would help me since you..."
"Listen, I really am busy. I have a lot to get done. I'm sure you understand."
Lather, rinse, repeat.