It is well known that the graded algebra $\mathcal{M}(1)$ of Modular forms for $\Gamma = PSL_2(\mathbb{Z})$ is the polynomial algebra
$$
\mathcal{M}(1) = \mathbb{C}[E_4, E_6]
$$
where $E_4$ and $E_6$ are the Eisenstein series of weights 4 and 6, respectively. It is also true that, while $E_2 = -\frac{1}{24} + \sum_{k=1}^\infty \sigma(k) q^k$, the Eisenstein series of weight 2 is not modular, it is *quasi*-modular, and satisfies a similar transformation law. Moreover, the graded algebra $\mathcal{QM}(1)$ of quasi-modular forms is given by
$$
\mathcal{QM}(1) = \mathcal{M}(1)[E_2] = \mathbb{C}[E_2, E_4, E_6].
$$

What can be said about quasi-modular forms for congruence subgroups of $\Gamma$? Is it still the case that, if we denote by $\mathcal{M}(N)$ and $\mathcal{QM}(N)$ the algebras of modular (resp. quasi-modular) forms for, say $\Gamma(N)$ (or perhaps $\Gamma_0(N)$, etc), that we can write $$ \mathcal{QM}(N) = \mathcal{M}(N)[E_2]? $$ If not, is there some way of determining generators for $\mathcal{QM}(N)$ over $\mathcal{M}(N)$, say for even small values of $N$ ($N = 2, 4$ are of interest to me)?

If this is not known, are there at least dimension formulae?