The case for a rewrite is always persuasive. The existing system is hard to change, nobody enjoys working on it, and a clean implementation with modern tools would be faster to build and easier to maintain. Each of those statements is usually true, and the conclusion still tends to be wrong.
The old system knows things you do not
Years of production have accumulated behaviour that looks like mess and is actually accumulated requirement: the special case for one large customer, the retry that exists because a partner is unreliable, the validation added after an incident.
A rewrite starts from the documented requirements, which are a subset. The gap is discovered one production failure at a time, after cutover.
You are competing with a moving target
The business does not pause while the replacement is built. Every change made to the old system during the rewrite must be made twice, and the team maintaining the old one is usually the team that understands it — which means they are not building the new one.
The longer the rewrite, the wider the gap, and the gap grows faster as the rewrite slips.
There is no partial delivery
A rewrite delivers nothing until it delivers everything, so there is no early feedback, no incremental value, and no natural point to stop. That structure makes cancellation politically impossible long after it has become the right decision.
Strangle it instead
Put an interface in front of the old system, then move one capability at a time behind it. Each step is small, reversible, and delivers value on its own. The old system shrinks until what remains is small enough to retire or to leave alone.
It is slower on paper and dramatically more likely to finish.
When a rewrite is genuinely right
A small system, a genuinely dead platform with no path forward, or a case where the requirements have actually changed so completely that the old behaviour is not wanted. These exist. They are much rarer than the number of rewrites started.
The instinct behind a rewrite is usually correct — the system does need to change. It is the all-at-once part that fails.

