It seems you're using "$p\ge q$" to denote "$p$ is at least as strong as $q$" - note that this conflicts with the more common usage (as e.g. in Kunen's book and Jech's solo book). This won't matter below, since I'll avoid using the symbol in the forcing context altogether, but it's worth mentioning.
Your intuition is exactly right - you're going to find, for each cofinal set $C$, a maximal antichain $A_C$ with $A_C\subseteq C$. Then a directed $G$ meeting each $A_C$ will yield a $\mathcal{C}$-generic filter straightforwardly.
Now anytime you hear the word "maximal," you should automatically think of Zorn's lemma. This is no exception, and there's a natural poset that leaps to mind:
Construction: Given $X\subseteq\mathbb{P}$, let $Ant(X)$ be the set of $A\subseteq X$ such that $A$ is an antichain in $\mathbb{P}$; we order $Ant(X)$ by inclusion.
It's easy to see that $Ant(X)$ always satisfies the hypotheses of Zorn's lemma, and so we get:
Fact: For any $X\subseteq \mathbb{P}$, there is an $A\subseteq X$ which is a $\mathbb{P}$-antichain which is "maximal in $X$" (that is, not strictly contained in any antichain $B\subseteq X$).
Note, however, that this does not imply that $A$ is actually a maximal antichain in the sense of $\mathbb{P}$, since $X$ could be "very small." So this is the remaining key:
Claim: If $X\subseteq\mathbb{P}$ is cofinal and $A_X\subseteq X$ is a "maximal-in-$X$" antichain, then $A_X$ is in fact a maximal antichain in the usual sense.
One you prove this, you can argue as follows: suppose $\mathbb{P}$ is c.c.c. and $\mathcal{C}$ is a collection of $\le\kappa$-many cofinal subsets of $\mathbb{P}$. For each $X\in\mathcal{C}$ let $A_X$ be a maximal-in-$X$ antichain, and let $$\mathcal{D}=\{A_X:A\in\mathcal{C}\}.$$ Clearly $\vert\mathcal{D}\vert\le\kappa$, and so we may apply our alternate version of MA$_\kappa$ to get a $G\subseteq\mathbb{P}$ such that:
Now think about what happens when we look at the upwards closure $\{h\in\mathbb{P}: \exists g\in G(g\le h)\}$ of $G$ ...
Probably the simplest way to build a model in which MA fails but every union of $<\mathfrak c$ meager sets is meager is to start with a model of GCH and adjoin Hechler reals in a finite-support iteration of length $\aleph_2$.
A table of facts of this sort is in Section 11 of my chapter of the Handbook of Set Theory, a preprint of which is available at http://www.math.lsa.umich.edu/~ablass/hbk.pdf .
For a lot more information about MA (and weaker forms of MA), the standard reference is David Fremlin's book, "Consequences of Martin's Axiom".
Best Answer
What you're trying to do is flatly false, unless $|X|=\aleph_0$.
Suppose that $\aleph_0<|X|$, then $[X]^{<|X|}$ contains all the countable subsets of $X$, so its cardinality is at least $|X|^{\aleph_0}$, but that is at least as large as $2^{\aleph_0}$, and indeed equal to it under $\sf MA$.
In general we can't say lot about $[\kappa]^{<\kappa}$, only that its size is exactly $\kappa^{<\kappa}$, which can be very different between models of $\sf ZFC$. One thing though, is that if $\kappa=\lambda^+$, then $\kappa^{<\kappa}=\kappa^\lambda=2^\lambda$. Another is that if $\kappa$ is singular, then $\kappa<\kappa^{<\kappa}$.