The simplest reason we have to use iterations to violate GCH below $\kappa$ is because it's required. More specifically, we have:
If $\kappa$ is a measurable cardinal and $2^\kappa>\kappa^+$, then there is a normal measure $U$ and some $A\in U$ such that $2^\gamma>\gamma^+$ for all $\gamma\in U$. (In fact, every normal measure will satisfy this).
This fact is proven via a quick analysis of ultrapowers coming from normal measures. For example, see Lemma 17.11 in Jech. So to violate the GCH at $\kappa$, it is necessary to violate it very often below $\kappa$.
In particular, this fact allows one to see that (assuming GCH, for instance) $\mathrm{Add}(\kappa,\kappa^{++})$ destroyscan destroy the measurability of $\kappa$, since it makes GCH fail at it and nowhere below.
As to where the proof fails: we only have $N\vDash j(P)\text{ is } j(\kappa)\text{-closed}$ by elementarity. At the same time, $M\vDash [\mathrm{Add}(j(\kappa),j(\kappa^{++}))]^M \text{ is }j(\kappa)\text{-closed}$, but $[\mathrm{Add}(j(\kappa),j(\kappa^{++}))]^M\neq j(P)=[\mathrm{Add}(j(\kappa),j(\kappa^{++}))]^N$. So the required filter $K$ is not guaranteed to exist.