Look this info up doing a search in google for crossfire setups. I know that with my x1950XTX Crossfire master card I can either use a x1950xt card or a x1900xt/x card. Either works fine. However I do actually have a master card. I am not sure if the current card you have is the standard x1950XTX (non crossfire master card). If so you would either need to find a master card (has a different output in the back of the card -- you can't mistake it) orrrrr you go Crossfire in software mode. I have heard there is a slight performance penalty but if I remember correctly you then DO NOT need the master card.
I wish I could remember more about this -- anyhow if you choose to go software crossfire, not sure what versions of cards you can mix and match.
And to answer your question -- ANY x1950 card of ANY brand will work. They don't have to be both Sapphire or ATI etc. Even if they are clocked at different speeds it still works just that it will run at the slower speed.
However you cannot mix say an x1950 pro with an x1950xtx card. There are also versions of the x1950xt that use GDDR3 and not GDDR4 like yours but again if you can mix a x1900 and x1950 then it should still work.
PS: one last suggestion... I have both a crossfire (x1950XTX crossfire and x1900XT) and my other system has a 8800GTX. The 8800GTX runs quieter, much faster and cooler and takes up only one spot and I never have to worry about issues with getting crossfire to actually work in games. If I could do it all again I would have simply sold the X19xx card and never bothered to get crossfire working. Maybe it's a different story with the new x2900XT cards.