Some people (including me) thinks that "canonical" should be synonymous with "Natural on isomorphisms". Doing so solve the problem of variance in the definition:
If you look at the category of finite dimensional vector spaces and linear isomorphisms between them, here $V \mapsto V^*$ can be made into an acutal (covariant) endofunctor of this category as you can fix the contravariance by inverting the morphisms, so that an invertible arrow $f:V \to W$ induces $(f^*)^{-1} : V^* \to W^*$.
And there you can concretely shows that there is no natural isomorphism between this functor and the identity.
Indeed, chosing an isomorphism $V \simeq V^*$ gives you a non-degenerate bilinear form on $V$ and you can always find an automorphisms of $V$ that does not preserves this bilinear form, which is exactly what the naturality on isomorphisms would mean ! so at the end of they day, one recovers exactly the argument that Paul Taylor or Chris Schommer-Pries made in the comments, but starting with a concrete categorical definition of "canonical".