The author of the map viewer was Mika, who hasn't been around for quite a while.
Colour key transparency is a really old way of doing this effect and I doubt that modern cards would support it well. You'd probably be best to create a new texture with an alpha channel and manually set this to transparent if the color from the original texture matched the colour key.
You could then render with alpha test turned on (don't know how you're doing it now).
IIRC This is because the sprite viewer doesn't save the X and Y position of each sprite to the filmstrip file. It currently guesses where to place the sprite (centers it around the dot that represents the origin) - this is a good guess for most unit sprites, but not a very good one for banners.
You can move the position of sprites in the sprite viewer by dragging them - you should then be able to align them properly before saving as .SPR
Also, just for clarity's sake, maybe a spot on the wiki to inform people when new sprites are being worked on, in order to prevent (or at least be up front about) duplication?
I've already made a similar army builder, which supports testing armies against rulesets, written in C#. If you would like the source for reference / extension, then let me know.
If you are using rdose, you can align the banners by right-dragging them. The pinkish dot is the origin. You'll have to look at the original banner files to see where to move them to.