I bet if you gave extra cash to someone who regularly uses heroin and who "maintains", they'll put that extra cash to good use.
It's clearly nonsensical to withhold money from them that they would otherwise have received. It also doesn't sound like a good idea to expect them to pay for their own treatment from the money you gave them. We need both for this to work.