PhD Supervisor warnings
Have never been at either side of the table in this kind of situations, but I can share some of my thoughts based on conflict resolution.

First, as I have stated in the comment, you need to let us know where you are at. Have you passed the qualifying exam? Have you submitted your PhD proposal? Was your proposal rejected? etc. All these can help the viewers here to give more concrete suggestions.

Think in your supervisor's shoes

First, you'll need to realize that mentor-mentee is a very delicate symbiotic relationship. The mentor guides the mentee by provide intellectual, physical and financial supports, while the mentee helps expand the research base of the mentor's, publish papers and solicit funding. Even you don't mind your progress being slow, you can significantly slow down your supervisor's career advancement, especially if he/she is struggling in a tenure track. So, the urge for you to get done is reasonable and you should understand that.

I am not entirely sure about your institution but in my institute, for a supervisor to keep a PhD student for two years (notice: not three, three is impossible) without producing any progress, a LOT of work has to be done (explaining to the promotion committee, to the dean, to the funding source, etc.) to keep the student safe. I suspect that your supervisor might have done a lot to protect you already, and finally gave in to the pressure and reality.

Ask for an evaluation guideline

If you really wish to stay and are confident that you can do that. First, ask for a set of criteria on what is meant by "immense progress within three months." Be it a draft of a proposal, a draft of a paper, a list of research aims, or whatever. Ask your supervisor for a list of deliveries and how they will be evaluated.

Then, go home and break them down into 2-week chunks of work. Turn the results into a monitoring chart. Every two weeks, you'll meet with your adviser and check off the items.

If anything slows you down, don't wait till the meeting, ask for help. If your supervisor is not giving you help, ask someone else or work it out yourself. Never attend the meeting without the promised delivery.

At the end of the third month, if both parties are happy, keep going and repeat the system. If for any reason it does not work, then bow out. At least you would get a Master in three years, and in that sense your resume wouldn't look too wrong. Getting a master after post-graduate is not rare, a lot of people get MBA or MPH after their doctoral studies. It's the nature of the Master degree and your work that matter.

Get professional help

You may also get some outside help (from someone who has no vested interest in your PhD). A career coach or an outside mentor would be a good choice. Frankly share with them your problem and let them give their diagnosis and suggestions. Be open and try them out.

In conclusion, get the requests in writing, and stick to it. Dive into the process for three months and see if both parties are happy. Leaving does not mean you lose. It may just mean this supervisor or this research topic is not a good fit. You may be amazed how much more you can actually get just by letting go.