I have troubles understanding what is fallacious in the following reasoning (something must be):
In model theory textbooks that I've checked (Hodges' short, Kirby), a homomorphism $h: A \mapsto B$ (for some structures $A, B$ with a common signature) preserves constants thus:
$h(c^A) = c^B$
Then, automorphism is defined as a bijective homomorphism (i.e. isomorphism) from a structure onto itself, i.e. say $h: A \mapsto A$. But, then:
$h(c^A) = c^A$
So, each object is mapped onto itself. Then, however, every automorphism would be trivial.
It is not the case that every automorphism is trivial.
Consider, for example, the theory of a single binary operation $+$. Then $x \mapsto -x : \mathbb{Z} \to \mathbb{Z}$ is an automorphism.
The key here is that not every element of a model can be uniquely defined by the language of the model. Automorphisms are guaranteed to preserve definable elements of the model, but other elements are not necessarily preserved.
For example, in the case of $(\mathbb{Z}, +)$, we see that $0$ is definable as the unique $x$ such that $x + x = x$. This means that any automorphism must preserve $0$. But there are no other definable elements of $\mathbb{Z}$, since all the other elements of $\mathbb{Z}$ aren't preserved by the map $x \mapsto -x$.