Do not abdicate responsibility for having to make the call to fire someone to the person who should be fired by setting them up to fail with a performance improvement plan or some other process. It’s not their job to bring the situation to a head. It’s yours. Do everyone a favour and do your job - fire the person - without anger, aggression or malice. Be as supportive and empathetic as you can be. Pay them generously for your failing to realize the problems early. Apologize for that. But deal with it. Let the person go.
And if you truly believe the person can be coached to be a valuable contributor, then put reasonable effort into that performance improvement plan and make it happen. But believe in it, don’t use the process to make your point. That is just being an asshole. And if that is what you are doing, do yourself a favour and resign.