Same here [1], I chose MathML as it worked out of the box in some browsers at the time. For browsers not supporting MathML I also have this ~80kB (~12kB compressed) library for converting it [2]. I tested your equation:
\def\d{\mathrm{d}}
\oint_C \vec{B}\circ \d\vec{l} = \mu_0
\left(
I_{\text{enc}} +
\varepsilon_0
\frac{\d}{\d t}
\int_S {\vec{E} \circ \hat{n}}\; \d a
\right)
It could not do the definition, so it ended up being: $$\oint_C \vec{B}\circ \mathrm{d}\vec{l} = \mu_0
\left(
I_{\text{enc}} +
\varepsilon_0
\frac{\mathrm{d}}{\mathrm{d} t}
\int_S {\vec{E} \circ \hat{n}}\; \mathrm{d} a
\right)$$
I did previously also load the LaTeX equation font, but I decided it used a lot of resource for little gain in the end.I was also looking at your recent blog [3], and one thing that I like about mine is that the code you see is what is run to produce the output [4]. I am in the middle of making the code interactive too, so that you can re-compile it within the web page and run different parameters to produce different outputs.
[1] https://coffeespace.org.uk/projects/mathml-render.html
[2] https://github.com/pshihn/math-ml
[3] https://sathomas.me/blog/robuststats/
[4] https://coffeespace.org.uk/projects/wavefront-algorithm.html