Consider the CW structure on $\mathbb{RP}^n$ given by one cell in every dimension. This gives rise to the cellular complex $C_\bullet(\mathbb{RP}^n)$ which is generated by a single element $c_i$ for every degree $0\le i\le n$ and with boundary map: $$\partial c_i=\cases{0&if $i$ is even\\2c_{i-1}&if $i$ is odd}$$ which gives us the usual homology. If we dualize this complex (with respect to $\mathbb{Z}$), we have the cochain compex $C^\bullet(\mathbb{RP}^n)$ which is generated by the maps: $$\begin{array}{rcrcl}c_i^*&:&C_i(\mathbb{RP}^n)&\longrightarrow&\mathbb{Z}\\&&c_i&\longmapsto&1\end{array}$$ The coboundary is given by: $$\delta c_i^*=c_i^*\circ\partial=\cases{2c_{i+1}^*&if $i$ is even\\0&if $i$ is odd}$$ And this gives a cohomology that is different from the usual singular cohomology, as we can see for example from the fact that $H^0=0$.
Now, if I haven't done stupid mistakes in the above, this would show that cellular cohomology is not (always) isomorphic to singular cohomology, while this is always true in homology. Why does this happen?
I have been told that if we have a CW structure such that the cellular complex can be embedded into the singular complex (via a chain map), then the cohomologies of the dual complexes will be isomorphic. Is this always true? Where can I find a proof of this fact? Does the inclusion of complexes induce an isomorphism in homology (so that we have an isomorphism in cohomology because of the universal coefficients theorem and $5$-lemma)?
Sorry if that's a lot of questions for one post.