Admittedly nothing would be gained but causing him to pay for what he did. You can argue (and you would probably be right) that more harm than good would be done from this, but I just can't find nothing morally objectionable about wanting to see a rapist pay for what they did because of the severity of what rape is.
Where do you draw the line on what's forgivable and what isn't? If someone can rape a person and be forgiven for their actions because they're trying to make the place they live not such, is there anything you wouldn't forgive?
So the ultimate question is, is it morally wrong to hate a rapist for what they did, even if they try to make up for it (much) later? I don't think so right now, but maybe my mind could be changed?
The problem isn't that you hate him, the problem is that you'd rather see him confined to a prison than trying to prevent other men from committing the act. Justice isn't just about punishing someone for their crimes, if he can be a positive male influence, and one that knows the disastrous effects of peer pressure and misogyny first hand, there is literally no better spokesperson against such violence.
He knows what young men are going through, he's been there, he didn't stop them or himself and regrets it. He can tell other men how its affected his life, how much guilt he is wracked with and how much of a burden it is. As bad as it is for the victims, it's a lot easier to be apathetic to their plight if you simply cannot relate.
The entire ideology of "toss him to the wolves" is the exact kind of shit that allows rapes to continue. No one actually talks about it. You just punish the rapists and nothing changes because there is no national discussion, there are no outreaches to those who might commit the act themselves. Rape is so terrible because it manages to be tragic
and common place.