Canonical - это только рекомендация, и Гугл её динамит очень просто. Я бы попробовал выяснить, откуда вообще он выкопал ссылку с параметром и попытался её грохнуть. И выяснить, почему он не видит (или не признает) canonical - а это обычно какие-то сигналы важности на неканонический URL - скажем, те же ссылки.
Многие вообще блокируют параметры такого рода на уровне robots.txt, что не самое красивое, но бывает что и единственное решение проблемы.