Your son is an adult, and must take responsibility for his own life choices.
As parents, we are, sometimes, quick to think it must be "our fault", but people take drugs for all sorts of reasons, and they must live with the results.
If he wants counselling/treatment, then he must seek it.
There are no perfect parents, but we do, usually, the best we can.
There are no perfect children either, even if they think they are..?
I wouldn't have a junkie in my house either, related or not, because it's all about the next fix.
So, I would press on with your life, and hope that he realises he will trash his life unless he changes.?