You need the `extendedglob` option for `(#b)`.
Also `05 + 1` yields `6`, not `06`.
You could do (with `extendedglob` and `histsubstpattern`)
^(#b)E(<->)^E${(l:2::0:)$((match[1]+1))}
Or:
echo ${_//(#b)E(<->)/${(l:2::0:)$((match[1]+1))}
* `<->` is a form of `
* `(l:2::0:)` (note that it's a lower case L, not the `1` digit) is the left-padding parameter expansion flag, here with `0`s, of length `2`.