You are right that $\mathcal{G}$ need not be the filter associated with a subsequence, and in fact in need not even contain the filter associated with any convergent subsequence. Instead you can just observe that if a refinement of $\mathcal{F}$ converges to a point $x$, then $x$ is an accumulation point of $\mathcal{F}$, meaning that every neighborhood of $x$ has nonempty intersection with every element of the filter $\mathcal{F}$. When $\mathcal{F}$ is the elementary filter associated with a sequence $(x_n)$, that exactly means that $x$ is an accumulation point of the sequence in the usual sense. So, in a metric space (or more generally a first-countable space), this implies some subsequence of $(x_n)$ converges to $x$.
The converse is harder, since it essentially amounts to proving that sequential compactness implies compactness for metric spaces (the implication from filter-compactness to compactness is just trivial definition-wrangling). Here's one way to do it. Suppose a filter $\mathcal{F}$ on a metric space $X$ has no convergent refinement. If $X$ is not complete, it is obviously not sequentially compact (take any Cauchy sequence that does not converge, and it cannot have any convergent subsequence).
So, we may assume $X$ is complete. Now let us take a look at our filter $\mathcal{F}$. Suppose $\mathcal{F}$ has a refinement $\mathcal{G}$ such that the diameters of elements of $\mathcal{G}$ get arbitrarily close to $0$. Choose sets $A_n\in G$ such that $\operatorname{diam}(A_n)\to 0$, and choose $x_n\in\bigcap_{m=1}^n A_m$ for each $n$. Then $(x_n)$ is Cauchy and so converges to some $x\in X$. But now it is easy to see that every neighborhood of $x$ contains $A_n$ for some $n$. That means $\mathcal{G}$ converges to $x$, which is a contradiction.
So, no refinement of $\mathcal{F}$ contains elements of arbitrarily small diameter. Now let $\mathcal{G}$ be an ultrafilter refining $\mathcal{F}$. In particular, this means that given any finite collection of sets $A_1,\dots,A_n$ with $A_1\cup\dots\cup A_n=X$, some $A_i$ must be in $\mathcal{G}$. In particular, if $X$ can be covered by finitely many sets of diameter $\leq\epsilon$, then $\mathcal{G}$ must contain a set of diameter $\leq\epsilon$. So, for some $\epsilon>0$, $X$ cannot be covered by finitely many sets of diameter $\epsilon$. We can now choose a sequence $(x_n)$ such that $d(x_m,x_n)\geq\epsilon/2$ for all $m\neq n$: having chosen $x_1,\dots,x_{n-1}$, the balls of radius $\epsilon/2$ around $x_1,\dots,x_{n-1}$ cannot cover $X$, so we can choose $x_n$ to be some point which is not in any of them. It is clear that no subsequence of $(x_n)$ can converge, so $X$ is not sequentially compact.
Best Answer
Hints: Since $f$ is surjective, the preimage of a nonempty set is nonempty.
By the conditions, $\mathcal C$ has to contain all neighborhoods of $x$ and all sets $f^{-1}(B)$ for $B\in\mathcal F$.
Show that they indeed generate a filter, which fulfills the requirements.