You might look into these possible causes:
When the oxygen sensors on both sides of the exhaust have very similar readings. When the oxygen sensor is bad, it can cause a false reading and trigger the code. If the engine does not exhibit any of the decreased performance associated with a bad catalytic converter, it very well may be the oxygen sensor (if you haven’t noticed the performance loss yet).
Even though you’ve replaced it, it may have failed.
Is responsible for scrubbing out as much pollution as possible from the Soul’s exhaust. Over time, they can become clogged. Although, modern catalytic converters are supposed to last the life of most vehicles, it could be there is some underlying problem if it has clogged.
There are videos on how to do a temp test on a cat.
O2 Sensor Wiring:
Over time, the oxygen sensor wiring can go bad. It is especially volatile since it is right next to the hot exhaust at all times. The downstream oxygen sensor wiring is also volatile since it is so far from the ECM (more distance to travel = more area to fail).
If your Soul is misfiring or the exhaust timing is off, this can affect the gasses that are actually going to the O2 sensors enough to cause the P0420 code to register.
If there’s a noticeable exhaust leak coming from the vehicle it can change what the O2 sensors register enough to throw the P0420 code.
Engine Temp Sensor:
If the computer doesn’t know what the engine temp is it’ll keep the fuel mixture rich. When the fuel mixture is rich, the exhaust the O2 sensors see will be out of range and it could throw the sensor.