Man where are those tutorial threads when you need them. I don't have the full answer but basically there's a program you download that can extract headers and inject them. You'd pull one out of a retail game you dumped with your gateway, modify it to be a certain size (some games are 1gb, 2gb, 4gb), and then inject it into a blank rom. The details someone else will have to provide.
just as likely nintendo could ban people playing eshop titles that are not linked to their NNID, in fact i imagine it would be much easier for them to just check if you have bought the game, all the banning stuff is still fairly speculative, no real evidence to prove why anyone is having errors connecting....is it possible they are checking headers....sure, but its just as likely they are looking for people playing out of region games or stuff like that, until we have more examples and more info of what exactly each user has been up to on their 3ds all everyone is doing is making guesses....yeah logically using a private header is better than a public header, but other than that, nobody knows exactly what nintendo is up to