The issue is that $\vDash (\phi \to \psi)$ implies "if $\vDash \phi$, then $\vDash \psi$" but not vice versa.
A simple example with propositional logic.
We have that :
$\nvDash [(P \to Q) \land (P \lor R)] \to (P \to R)$.
We can check with an assignment $v$ such that : $v(P)=v(Q)=\text T$ and $v(R)=\text F$.
But we have that :
"if $\vDash (P \to Q) \land (P \lor R)$, then $\vDash(P \to R)$" holds,
because the antecedent : $\vDash (P \to Q) \land (P \lor R)$, is false.
A lilttle bit tricky example with FOL is the following :
let $\phi$ be $(0 < x)$ and $\psi$ be $(1 < x)$
and consider the structure $\mathbb N$.
We assume the "usual" convention that, if $\phi$ has a free variable $x$, then $\mathcal M \vDash \phi$ iff $\mathcal M \vDash (\forall x) \phi$.
Thus, we have that :
$\mathbb N \nvDash (0 < x) \to (1 < x)$.
But again, we have that :
"if $\mathbb N \vDash (0 < x)$, then $\mathbb N \vDash (1 < x)$" holds,
because the antecedent is false.
In the same way, we can easily manufacture a suitable counter-example for the case with all structures $\mathcal M$ [see Hemming's answer below].