Ich bin mir nicht sicher, ob das Überschreiben des Canonical-Tags mit JavaScript funktionieren wird, da dies eher auf der Ebene des Spiders liegt (also dem Teil, der Daten abruft und sammelt) als auf der Ebene des Indexers (dem Teil eines Bots, der Daten interpretiert und im Suchindex speichert).
Ungefragter Rat: Du solltest vielleicht diesen Beitrag lesen, damit du diese Überschreibungen in ein Plugin einbauen kannst: