Did the drugs force themselves on the person? It is, in fact, the fault of the addict that they're addicted in the first place. Especially if the country they're living in actually takes measures to combat drug dealing and production. Of course if you're living in a shithole like Mexico or the USA then you can also lay the blame on the drug dealers and the incompetent state. But that's besides the point. You don't rehabilitate drug addicts, rather you take on the drug dealers and producers and the problem will mostly solve itself. After all, you can't get addicted if there's no one to sell drugs in the first place.
And you seem to misunderstand my beliefs about prison. I don't think prison should be about punishing people. I believe prison is there to seperate criminals and morally maladjusted people from society. Nothing less, nothing more.