Intersection of two cosets of two different normal subgroups of finite index is a coset of a normal subgroup of finite index

The question is from Grillet's lovely Abstract Algebra:

Let $A,B$ be two cosets of possibly different normal subgroups of finite index of a group $G$. It is to be shown that $A \cap B$ is either empty or the coset of a normal subgroup of $G$, also of finite index.

So far I have assumed that the intersection is not empty and that the normal subgroups are different. In this case, we can write:

$xN \cap yH = \{ z: \exists n \in N, h \in H : z=xn=yh \}$

where $N,H$ are our normal subgroups of finite index and $x,y \in G$ fixed. I haven't really gotten further. I've also tried applying the second isomorphism theorem but it doesn't seem to stick. A hint or some guidance would be welcome.

$\newcommand{\Size}[1]{\left\lvert #1 \right\rvert}$Suppose $N, H$ are any subgroups of finite index in $G$.
If $x N \cap y H \ne \emptyset$, let $z \in x N \cap y H$. Then $z \in x N$, so that $z N = x N$, and similarly $z H = y H$, so $$x N \cap y H = z N \cap z H = z (N \cap H).$$ In fact clearly $z (N \cap H) \subseteq z N \cap z H$, and if $w \in z N \cap z H$, then $w = z n = z h$ for some $n \in N$ and $h \in H$, and thus $n = h \in N \cap H$.
Now use the fact that if two subgroups have finite index, then their intersection has finite index. This follows from the formula $$\Size{N H : H} = \Size{N : N \cap H}$$ which holds if $H$ has finite index (note that $N H$ is not necessarily a subgroup), so that if $N$ has also finite index $$\Size{G : N \cap H} = \Size{G : N } \cdot \Size{N : N \cap H}.$$