Poincare Duality: $H^k(M) = H_{n-k}(M)^*$ or $H^k(M) = H^{n-k}(M)^*$? There are $2$ versions of Poincare duality, in topology or in differential geometry.

Theorem(Topological Version) Let $M$ be a closed oriented $n$-manifold with fundamental class $[M]\in H_1(X)$. Then the map $H^k(M)\rightarrow H_{n-k}(M)$ defined by $\alpha\rightarrow [M]\cap \alpha$ is an isomorphism.


Theorem(Geometric Version) Let $M$ be a closed oriented $n$-manifold. The natural pairing
$$H^k(M)\times H^{n-k}(M)\rightarrow \mathbb R\quad ([\alpha],[\beta])\mapsto\int_{M}\alpha\wedge\beta$$
is non-degenerate.

It seems that the topology version says $H^k(M) = H_{n-k}(M)^*$ but the geometric version claims $H^k(M) = H^{n-k}(M)^*$. But I don't think there is a natural identification like $H^k(M) = H_k(M)$. How to understand this imcompatiblity?
 A: This has already basically been answered in the comments but there's some cleaning up and putting together to do so let's do it. First of all, the two versions involve different (co)homologies so let's be precise about this. The topological version gives us isomorphisms
$$H^k(M, \mathbb{Z}) \cong H_{n-k}(M, \mathbb{Z})$$
where here we mean singular homology and cohomology respectively. The fundamental class lives in $H_n(M, \mathbb{Z})$ and there's no dual here. The geometric version gives a non-degenerate pairing
$$H^k_{dR}(M, \mathbb{R}) \times H^{n-k}_{dR}(M, \mathbb{R}) \to \mathbb{R}$$
where now we're referring to de Rham cohomology, and in particular the coefficients now take values in $\mathbb{R}$. This gives an isomorphism $H^k_{dR}(M, \mathbb{R}) \cong H^{n-k}_{dR}(M, \mathbb{R})^{\ast}$, and now there is a dual. So, no obvious contradiction here.
What is the relationship between these two isomorphisms? For $M$ a smooth manifold we have $H^k_{dR}(M, \mathbb{R}) \cong H^k(M, \mathbb{R})$ so that de Rham and singular cohomology (with coefficients in $\mathbb{R}$, not $\mathbb{Z}$). By two applications of the universal coefficient theorem for cohomology we have
$$H^k(M, \mathbb{R}) \cong \text{Hom}(H_k(M, \mathbb{Z}), \mathbb{R}) \cong H_k(M, \mathbb{R})^{\ast}$$
and if $M$ is a closed manifold then all of these homologies and cohomologies are finitely generated, which gives $H^{n-k}(M, \mathbb{R})^{\ast} \cong H_{n-k}(M, \mathbb{R})$. Similarly the universal coefficient theorem for homology gives
$$H_{n-k}(M, \mathbb{R}) \cong H_{n-k}(M, \mathbb{Z}) \otimes \mathbb{R}$$
So the geometric version is obtained from the topological version by first tensoring with $\mathbb{R}$ (which loses torsion information, so the topological version is stronger) and then dualizing using universal coefficients for cohomology. (This doesn't actually follow from anything I've said, it's an extra thing that's true.)
