The isomorphism, at least, exists. Take $M\to Y$ an injective resolution$M\leftarrow Y$ and $\mathbb Z\leftarrow X$ projective resolutions of $M$ as a $G$-module, and $\mathbb Z\leftarrow X$ a projective resolution of $\mathbb Z$ as a $G$-modulemodules. The double complex $\hom_G(X,\hom_{\mathbb Z}(Y,D))$ gives rise, as usual, to two spectral sequences. Computing first cohomology with respect to the differential induced by that of $Y$ and then by that of $X$, we get $H^\bullet(G,\hom(M,D))$. On the other hand, rewriting the complex as $\hom_{\mathbb Z}(Y\otimes_G X,D)$ using standard adjunctions, and then computing homology first with respect to the differential induced by that of $X$ and then by that of $Y$ gives the other side of your isomorphism. Convergence then does the trick.
That the isorphism is given by cap products should follow from general nonsense...