I truly believe hunger will win out, and he'll be back. You have supplied his only nourishment for nearly three months; he'll also remember the comfort and love he had in your home. Right now, he's confused. It might be hard for you to understand, but he's also pleased to be back outside -- on his turf -- even though he was safe and warm inside. He'll be able to withstand the weather; he did it before. But he will get hungry, even if he is hunting. Keep putting food out and he'll get back into the habit of coming for din-din. I wouldn't set a trap yet, because I'd want him to become comfortable again coming around to eat. Be patient and know that he is still unsure of you. Once you're sure he's frequenting your place again, then I'd put the food in a trap for a few days or a week, but I wouldn't 'set' the trap until he's used to it as a feeding station.
Daisy, one of my fosters, slipped out after she had been here only one day. While she hadn't previously been a feral, she was really, really skittish and fearful. Her owner had been sent to prison, and another rescuer and I broke into the house and rescued Daisy and her housemate, Billy Bob (who is also with me as a foster). I didn't even know Daisy's "real" name, and that made it even more difficult calling her. Plus, my home is about 20 miles from her previous abode. I actually thought she would never return. I put out posters, called shelters and vets (though I doubted anyone could catch her), set traps at neighbors' homes, and the local Domino's pizza even attached "wanted posters" to all their delivered pizzas! Daisy was gone for 30 days! In all that time, she had been spotted only once, about half a mile away. Then, she miraculously showed up on the porch steps, noticeably thinner, asking to be let in for food. She hasn't had the urge to run away since then, thank goodness!
Anyway, don't give up. He knows where you are and I just know he'll be back. As often as you can, call him, shake the food bag or bang on the can, because he does know where home and food are!
Before you criticize someone, you should walk a mile in his shoes. That way, when you criticize him, you're a mile away and you have his shoes.