Opa, Eric. Tudo bom?
Isto é pouco usual, apesar de possível.
Além disso, você está investindo muito código em uma situação que não deveria acontecer.
Note que a saída, quando conta <= 0
será "O argumento conta ;esta incorreto!""
. O ponto-e-vírgula não deveria estar ali, mas se você quiser montar o texto com todas as situações possíveis (vários nomes e plural, um só nome e singular, vírgulas etc.) o código vai ficar mais complexo ainda.
Ao lançar exceções, o mais comum é lançar o quanto antes e da forma mais simples possível:
if(conta <= 0)
throw new ArgumentException("A conta deve ser maior que 0", nameof(conta))
if(agencia <= 0)
throw new ArgumentException("A agência deve ser maior que 0", nameof(agencia))