Moving an Event doesn't quite work as expected .. redirect doesn't happen

Since there is no OOTB way to move an Event (and it isn't on the roadmap), we have endeavoured to code this up ourselves. It's pretty much working.. I can move an Event from one calendar to another...

The event is there in the Calendar I moved it to, and is available on the new URL. 

There's one problem; if I go to the old URL it doesn't redirect to the new one as I'd expect. That's in spite of there being a row in the te_UrlRedirects table which looks correct to me...

I can actually go to the old URL & the event still displays (with no redirect).. making it look like it's in the old group/calendar, even when it isn't!

When I delete the redirect from te_UrlRedirects, it doesn't make any difference.

If I do this with another content type, like a Wiki doc then I can see the browser redirect from the old URL to the new one. I'd assumed that was to do with the entry in te_UrlRedirects, but interestingly, it continues to redirect even when I delete that row from the database (and restart the site). It therefore feels like I'm missing a piece of the puzzle, and that piece might help solve why Event moving isn't working 100% as expected.

Any help would be appreciated.

Thanks!