I think it is pretty silly for celebrities to charge for you to take a photo with them. I will never forget when I went to a con about 4 years ago and Kristin Bell was there. I sat and ate lunch as I saw lines of people getting their pictures taken with her. I decieded I wanted a picture as well, because, well, she is hot and I am a fan of Veronica Mars.
I got up to the lady that was collecting her money and I was informed it was 40 bucks for an autograph and if I wanted a picture with her it would be a total of 80 bucks for the auto and a photo op. I asked if the money went to charity and was told that the money pays for her to be here. I was like, well, I just watched her make at least 3 of my weekly paychecks in the last 45 minutes, I think her trip has been paid for and I just walked away.