I've had this issue w/ both of my older boys around the same age. Usually they took like a pack of gum and once batteries from the little stands by the checkout.
I've always come down really hard on them and make them go up to the customer service or manager depending on the place and say, "I am so sorry, I am a thief and I stole from you. I will never do it again." I generally wait for other people to be around. I know that there are differing views on whether or not it is alright to embarass or humiliate a child. But I find that to be a very good motivator for changing or halting behavior.
It has never been an ongoing issue with us because once they realized I meant business, they stopped. But if it was ongoing, I think I would do along the same lines as you, but I might change a few small details. For instance, each time I found a stolen thing, I would pick the object that my child loved the most (even if it was the tv, video games, etc) and give it away to charity. But I would add a little twist to it. I would make them take the item in their own hand or right by my side if it was too heavy. And take them up to the person at Goodwill or the Salvation Army or whatever and make them say the same thing they had to say to the store manager. "I am giving this to you because you need it more than I do. I stole from the store, so I am a thief and don't deserve this."
I think they'll get tired of it, and after having to say, "I am a thief" enough times, they realize it isn't cute at all.
Another thing that might help is to have her help serve or something else at a soup kitchen or shelter. Or even just take her there. Or if they have churches that have lines of homeless people where they give out food or clothes, etc, and you can show her the children and families who don't even have enough to eat, let alone little things like she is stealing. Sometimes actually seeing things like that is easier to get it through their heads that they shouldn't be so selfish and should be happy for what they do have. After we passed one of those lines and I explained what was going on, both my older boys were crying because they felt sorry for the less fortunate, and they wanted to go home and pack up some toys to take the children. Now every year at Christmas, we go through their rooms as a tradition and they give both new and old toys away on their own.
I wish you the best of luck, I've been a single mom of 2 boys before and know that it isn't easy, especially when a discipline issue comes up like this.