Finding the no. of decoders required in cascading
Your approach is correct.
This is probably an error, or oversight, in the textbook: the authors forgot to allow for selecting the final decoder, which is what your 9th decoder does.
There's not a standard formula.  First, you have to stack up enough decoders to give you the number of output pins you need.  Then, you have to "tree up" enough additional decoders to select the output-layer decoders.