In proving the Orbit-Stabilizer Theorem, I couldn't help but notice its resemblance to the First Isomorphism Theorem for groups. Let $G$ be a finite group and $X$ be a finite set, and let $G$ act on $X$. Let $S_x = \{g\in G\mid g\cdot x=x\}$ be the stabilizer of $x$ for any $x\in X$, and let $G\cdot x = \{g\cdot x\mid g\in G\}$ be the orbit of $x$.
We can give a group structure on $G\cdot x$ by defining $(g\cdot x)(h\cdot x) = (gh)\cdot x$. Let's show that this is a group:
i) $(gh)\cdot x\in G\cdot x$, so the operation is closed.
ii) Let $g,h,k\in G$. Then, $$[(g\cdot x)(h\cdot x)](k\cdot x) = ((gh)\cdot x)(k\cdot x) = ((gh)k)\cdot x = (g(hk))\cdot x = (g\cdot x)((hk)\cdot x) = (g\cdot x)[(h\cdot x)(k\cdot x)],$$ so the operation is associative.
iii) $1\cdot x$ is the identity.
iv) $g^{-1}\cdot x$ is the inverse of $g\cdot x$.
So $G\cdot x$ is a group. Importantly, the map $\varphi:G\to G\cdot x$ defined by $\varphi(g)=g\cdot x$ is a group homomorphism, with kernel $S_x$. By the first isomorphism theorem, $$G/S_x\cong G\cdot x.$$ This means, specifically, that $G/S_x$ is a group, which is true if and only if $S_x$ is a normal subgroup of $G$. But this is clearly not the case generally, since the conjugation action of $S_3$ (permutation group) on itself does not give a normal stabilizer; for instance, the stabilizer of $(1\ \ 2)$ is $\{(1), (1\ \ 2)\}$, which is not a normal subgroup of $S_3$.
My question: where does my "proof" go wrong? How does it not show that $S_x$ is a normal subgroup generally? When is the stabilizer a normal subgroup of $G$; i.e. when is $\varphi:g\mapsto g\cdot x$ a group homomorphism?