Problem of sloppy notation
The notation is sloppy. Your students are justifiably confused. We've just gotten used to it.
In order to untangle this, we need the notion of free variables and bound variables. These have somewhat confusing, perhaps even counter-intuitive names. So, I will use "local" as synonymous with "bound" and "non-local" as synonymous with "free".
When we write the expression $\int_0^a f(x) dx$, the $x$ is a local (bound) variable. It does not refer to anything external to the expression. The meaning of $x$ is "bound" within the $\int$-operation. Local (bound) variables may be thought of as conveniences or placeholders. Their names do not matter. So, we could also write $\int_0^a f(v) dv$ and mean the exact same thing.
In the expression $\int_0^a f(x) dx$, the $f$ and $a$ are non-local (free). They refer to objects that need some external context. Another way to say this is that the expression is a function of $f$ and $a$, that is we could write $g(f,a) = \int_0^a f(x) dx$. It is not a function of $x$. We could write this function instead as $g(f,a) = \int_0^a f(v) dv$ and mean the same thing.
Now consider the expression put before your students.
\begin{equation}
\int_0^af(a-x)dx=-\int_a^0f(u)du=\int_0^af(u)du=\int_0^af(x)dx \qquad (1)
\end{equation}
In equation (1) you've asked your students to consider $u$ as non-local variable and equal to $a-x$ in the exposition for the leftmost equality.On the right hand side that context has already been dropped. In the rightmost equality, students are confused that $u$ is treated as a local variable, that is not subject to the context of $u = a - x$.
Indeed, if we are allowed to let context come and go, then we could continue equation (1) as follows since $x = a - u$
\begin{equation}
\int_0^af(x)dx = -\int_0^af(a-u)du \qquad (2)
\end{equation}
Combining (1) and (2) we have
\begin{equation}
\int_0^af(a-x)dx=-\int_0^af(a-u)du \qquad (3)
\end{equation}
And dropping context once more to consider $u$ as local to the $\int$-expression only, we'd get
\begin{equation}
-\int_0^af(a-u)du=-\int_0^af(a-x)dx \qquad (4)
\end{equation}
And putting our results together we have arrived at
\begin{equation}
\int_0^af(a-x)dx=-\int_0^af(a-x)dx \qquad (5)
\end{equation}
Which of course implies that for any $f$ and $a$, $\int_0^af(a-x)dx=0$. Yikes! Your students are wise to be wary of applying and dropping context.
Problem of missing the key transformation
Consider instead writing $u = \phi(x) = a - x$, in other words $u$ is a function. Then, develop purely with derivatives and algebraic substitution that
\begin{equation}
\int_0^af(a-x)dx=-\int_0^a f(\phi(x))\phi'(x) dx \qquad (6)
\end{equation}
Now we often just write $u = \phi(x)$ and $du = u'(x) = \phi'(x)dx$, so we could also write (6) as
\begin{equation}
\int_0^af(a-x)dx=-\int_0^a f(u)du \qquad (7)
\end{equation}
However, at this point we are yet to actually do integration by substitution. Going from (6) to (7) is just a change in notation! Continuing from (6), integration by substitution, which requires two applications of the fundamental theorem of calculus, allows the following
\begin{align}
\int_0^af(a-x)dx &=-\int_0^a f(\phi(x))\phi'(x) dx \\
&=-\int_{\phi(0)}^{\phi(a)} f(v) dv
\end{align}
where $v$ is a local variable! Writing this same development with $u$ notation instead, that is continuing equation (7), we'd have
\begin{align}
\int_0^af(a-x)dx &=-\int_0^a f(u)du \\
&=-\int_{\phi(0)}^{\phi(a)} f(v)dv
\end{align}
So, where it looks like we've simply swapped names for $u$ and $v$ and changed the limits, we actually applied the fundamental theorem of calculus twice! That is what justifies the apparent dropping of context, and it is no trivial result.
No since $x$ and $v$ are local variables (bound within their own $\int$-expressions), we can now rename those as we like, such as naming $v$ as $x$ to get
\begin{align}
\int_0^af(a-x)dx &=-\int_0^a f(u)du \\
&=-\int_{\phi(0)}^{\phi(a)} f(v)dv \qquad \text{by integration by substitution} \\
&=\int_0^a f(v) dv
=\int_0^a f(x) dx
\end{align}