Canary upgrade from pre istiod Istio version

Hello, we’re on a fairly old version (1.3.3) that was installed using helm. The upgrade documents suggest that the way forward is a canary install, and I would like to use the Istio Operator to do that. I have had some success with the following
1.3.3 → 1.4.10 in place helm upgrade
1.4.10 → 1.6.13 canary install using 1.6.13 Istio Operator

However, at this point I have difficulty getting beyond this to later versions (I have tried 1.7 through to 1.10). The issue seems to be in performing a subsequent canary install (and also I’ve tried going straight from 1.3/1.4 to a much newer version). Any attempt to install a canary version past 1.7 seems to work OK, but when I try to clean up the new control plane by deleting the resource, I get the following error in the Istio Operator log

2021-06-21T15:37:14.852393Z info installer Reconciling IstioOperator
2021-06-21T15:37:14.853038Z info installer Deleting IstioOperator istio-1-10-1
2021-06-21T15:37:14.892027Z info installer API server conflict during finalizer removal, retrying.
2021-06-21T15:37:14.905149Z info installer Reconciling IstioOperator
2021-06-21T15:37:14.905352Z info installer Reconciling IstioOperator

I’ve seen there is a known bug around istiod service not being created for ‘revision’ installs (as I’m coming from a pre-istiod version via a canary install, this seems unavoidable), so I’ve manually created the service as instructed in the docs, but does not fix my issue.

For the most part, the canary install via Operator seems to work for pretty much any version, but it’s the cleanup beyond 1.6 is causing me problems, and I’m concerned that this is going to leave problems for subsequent upgrades

If anyone has any advice this would be much appreciated