Plus construction of a presheave factors every sheaf-valued morphism. I'm having some trouble understanding the correctness of some proof in Sheaves in Geometry and Logic (Mac Lane, Moerdijk). It concerns the lemma III.5.3 :

If $F$ is a sheaf and $P$ a presheaf, then any map $\phi \colon P \to F$ of
  presheaves factors uniquely through $\eta$ as $\phi = \tilde\phi \circ \eta$.
$$ \begin{matrix} P & \stackrel \eta \to & P^+ \\ & \!\!\!\!\!\!_\phi\searrow & \downarrow \small{\tilde\phi} \\ & & \!\!\!\!F\end{matrix}$$

Recall the plus construction : $P^+(C)$ is the equivalent class of matching families under the relation $(x_f)_{f\in S} \sim (y_g)_{g \in R}$ ($R,S$ covering sieves of $C$) iff there is some covering sieve $T \subseteq S \cap R$ on which $x_f = y_f$ forall $f \in T$.
Recall the morphism $\eta$ : $$\eta_C \colon P(C) \to P^+(C),\, x \to [(Pf(x))_{f \colon D \to C}].$$
I easily understand the definition of $\tilde\phi_C(\mathbf x)$ for some equivalent class $\mathbf x = (x_f)_{f\in S}$ : we push the matching family $(x_f)$ by $\phi_C$ into a matching family of $F$ ; being a sheaf, $F$ admit a unique amalgamation in $F(C)$ that we define to be $\tilde\phi_C(\mathbf x)$. The well-definition is no problem. What bother me is to check that $\tilde\phi = (\tilde\phi_C)_C$ is actually natural in C.
We want a commutative diagram
$$ \begin{matrix} P^+C & \stackrel {Ph} \to & P^+D \\
\small{\tilde\phi_C}\downarrow \ \ \ & & \ \ \ \downarrow\small{\tilde\phi_D} \\
FC & \stackrel{Fh} \to & FD \end{matrix}$$
for all $h \colon D \to C$. For an element $\mathbf x = (x_f)_{f\in S}$, and $h \in S$, the stability axiom of Grothendieck topologies assure $h^\ast S = \hom(-, D)$, and so the commutativity is immediat from the definition of $\tilde\phi_C(\mathbf x)$ as amalgamation.
But I'm stuck with the case where $h \notin S$, and (it seems to me that) it is not treated in the proof of Mac Lane. Maybe can we always find $\mathbf y = (y_g)_{g\in R}$ with $\mathbf x \sim \mathbf y$ and $h \in R$, but I can't see it.
 A: Let me write $w$ for the equivalence class in $P^{+}C$ of a matching family $(x_{f})_{f\in R}$ for a covering sieve $R$ of $C$. Now the down-right path sends $w$ to $Fh(y)$, where $y$ is the only amalgamation for the matching family $(\phi_{dom (f)}(x_{f}))_{f\in R}$. The right-down path maps $w$ to $z\in FD$, where $z$ is the only amalgamation for $(\phi_{dom (hf')}(x_{hf'}))_{f'\in h^{\ast}(R)}=:k$ (recall the definition of $P^{+}h$ for an arrow $h$). In order to show that going the two way gives the same result it suffices to show that $Fh(y)$ is an amalgamation of $k$: if $f'\in h^{\ast}(R)$ 
$$Ff'(Fh(y))=(F(hf'))(y)=\phi_{dom (hf')}(x_{hf'})$$ where the last equality is by definition of $y$ and we are done.
I hope it's clear enough (fill in the details!) and that I didn't make some mistakes. 
A: I don't know about you, but I find the whole business with equivalence classes very confusing. Looking at the question from a more category theoretical point of view should make it easier:
Let $P$ be a $\mathscr A$-valued presheaf on a site $\mathscr C$ and $X\in \mathscr C$. Then for any covering family $\mathscr U=\{U_i\rightarrow X\}$, define $P_X(\mathscr U)$ as the equalizer of the sequence
    \begin{equation}
  P_X(\mathscr U)\rightarrow \prod_i P(U_i)\rightrightarrows \prod_{i,j}P(U_i\times_XU_j).
 \end{equation}
    Further define $P^+(X)$ as the colimit
    \begin{equation}
  P^+(X)=colim_{\mathscr U}P_X(\mathscr U)
 \end{equation}
    running over all covering families $\mathscr U$ of $X$.
Then the universal property gives you immediately the morphism $\eta: P\to P^+$, and also a morphism $\tilde \phi: P^+\to F^+=F$. Being defined via the universal property, naturality should be easy to check.
To see how you get a morphism $P\to P^+$, note that the restriction map
$$P(X)\to \prod_i P(U_i)$$ induces a map $P(X)\to P_X(\mathscr U)$ via the universal property of the equalizer. Now the colimit comes with maps $P_X(\mathscr U)\to P^+(X)$, which after composition yields $P(X)\to P^+(X)$. This is independent of the choice of the covering, because for a refinement $\mathscr V=\{V_i\rightarrow X\}$ of $\mathscr U$, the diagram
$$ \begin{matrix} P(X) &  \to & P_X(\mathscr U) \\ & \searrow & \downarrow  \\ & & \!\!\!\!P_X(\mathscr V)\end{matrix}$$
commutes.
