Because technically it's not headless; Gecko's architecture requires that it output to something visual so it can't run truly headless like WebKit. You'll notice a little window actually launches when the SlimerJS tests run.

Maybe I should link to the explanation in that bit.