Nothing reeks of a sheltered, upper-middle (possibly upper) class upbringing like this. To have such disdain for these people is sick and shows a disconnection from reality. Begging should not be illegal, it might be annoying when you know half of them are using the money for drugs but it shouldn't be illegal. It's also worth noting many homeless people weren't heavy into drugs before they became homeless. If I was out on the streets for years with nothing to do, I can't imagine what I'd do to bring some joy to my life.
Rehabilitation is the way to go. I've seen the effect of rehabilitation vs lockup in my local area with people I used to know. The ones who end up getting locked up just repeat the cycle. I've actually seen positive change in the ones put into rehab centres.