Deciding whether complement of context-free language is context-free
Your problem can be formalized in several equivalent ways:

Given a context-free grammar $G$ over $\Sigma$, is $\overline{L(G)} := \Sigma^* \setminus L(G)$ context-free?

Given a PDA $M$ over $\Sigma$, is $\overline{L(M)}$ context-free?


Since we can effectively (and efficiently) translate between the two representations, both problems are equivalent. We stick to the first one.
It is well-known that given a context-free grammar $H$ over $\Sigma$, deciding whether $L(H) = \Sigma^*$ is undecidable. We will reduce this problem to Problem 1.
Let us be given a context-free grammar $H$ over $\Sigma$. If $\Sigma$ is a singleton, then $L(H)$ is regular, and so $\Sigma^* \setminus L(H)$ is also regular and context-free. Otherwise, let $a,b \in \Sigma$ be two distinct symbols. Construct a grammar $G$ over $\Sigma \cup \{\#\}$ (where $\#$ is a fresh symbol) for the language
$$
L = (\Sigma^* \setminus \{ww : w \in \Sigma^*\}) \# \Sigma^* \cup \Sigma^* \# L(H).
$$
If $L(H) = \Sigma^*$ then $L = \Sigma^* \# \Sigma^*$ is regular, and so its complement is regular and context-free. Otherwise, let $x \notin L(H)$. If $\overline{L}$ were context-free, then so would the following language be:
$$
\overline{L} \cap \Sigma^* \# x = \{ww : w \in \Sigma^*\} \# x.
$$
This would imply, however, that $\{ww : w \in \Sigma^*\}$ is context-free, which is known to be false.
Summarizing, $\overline{L(G)}$ is context-free iff $L(H) = \Sigma^*$.
Compare Theorems 11–12 in Hendrik Jan's notes.