A razão é que ((...)) é um caso especial. Realiza aritmética. Não há uso para o texto dentro de ((...)) . Assim, como um atalho, qualquer nome dentro de ((...)) é considerado como uma variável de shell.
Como resultado, os dois seguintes fazem a mesma coisa:
$ a=1; b=2; ((c=$a+$b)); echo $c
3
$ a=1; b=2; ((c=a+b)); echo $c
3