A sintaxe que você está procurando é sed -e 's/\(scale=\)"[0-9]\+\(\.[0-9]\+\)\?"/"'"$replacement_number"'"/'
. A regex de pesquisa em detalhes:
\(scale=\) the literal string scale=, remembered as
" opening double quote
[0-9]\+ one or more digits
\(\.[0-9]\+\)\? optionally, a period followed by one or more digits
" closing double quote