Se o seu agregado for invariável para nulos, você precisa marcá-lo como tal no SqlUserDefinedAggregateAttribute , algo como:
[SqlUserDefinedAggregate(Format.UserDefined, MaxByteSize = 8000,
IsInvariantToNulls = true)]
O IsInvariantToNulls propriedade descreve o requisito como:
Olhando para o seu agregado, acho que você pode precisar fazer algum trabalho em seu
Add
método - se o valor passado for nulo, talvez não o adicione à lista?