Cualquiera $(()) o $[] funcionará para calcular el resultado de una operación aritmética. Estás usando $() que simplemente toma la cadena y la evalúa como un comando. Es una distinción un poco sutil. Espero que esto ayude.
Como tink señaló en los comentarios de esta respuesta, $[] está en desuso, y $(()) debe ser favorecido.
Me parece muy limpio usar la variable interna "$SECONDS"
SECONDS=0 ; sleep 10 ; echo $SECONDS