КРОМЕ функции возьмет набор и удалит участников, которых Вы не хотите. В Вашем случае необходимо сказать:
EXCEPT(
{DESCENDANTS([Location].[Test Company],[Location].[Site], SELF_AND_BEFORE)},
{DESCENDANTS([Location].[Whatever].[Redundant],[Location].[Site], SELF_AND_BEFORE)}
)
Это дает Вам все в первом наборе кроме того, что Вы упомянули во втором. Легче понять как это:
EXCEPT({the set i want}, {a set of members i dont want})
Вы не должны должны быть волновать по поводу третьего (дополнительно) аргумент: http://msdn.microsoft.com/en-us/library/ms144900.aspx