The derivation is correct under the assumption \$\epsilon_1 = \epsilon_2 = \epsilon\$, but in the voltage drop across the resistor there is indeed a missing \$R\$ on the right-hand side. The correct equation is
$$IR = \frac{R}{R+r_\mathrm{eq}}\epsilon\tag{1}$$
To find the current according to the book procedure, solve the equation at loop fcdef for \$I_2\$,
$$I_2 = \frac{\epsilon-IR}{r_2}$$
and substitute this into the equation at loop abcfa, obtaining
$$I_1 = \frac{r_2}{r_1}I_2 = \frac{\epsilon-IR}{r_1}$$
and finally substitute \$I_1\$ and \$I_2\$ into \$I = I_1+I_2\$ such that
$$I = (\epsilon-IR)\bigg(\frac{1}{r_1}+\frac{1}{r_2}\bigg)=\frac{\epsilon-IR}{r_\mathrm{eq}}.$$
Solving for \$I\$ yields the desired result
$$I = \frac{\epsilon}{R+r_\mathrm{eq}}.$$
For alternative solutions, the most straightforward way to derive that voltage is to use Millman’s theorem, which applied to that circuit yields
$$IR = \frac{\epsilon_1/r_1+\epsilon_1/r_2}{1/r_1+1/r_2+1/R}$$
Assuming \$\epsilon_1 = \epsilon_2 = \epsilon\$ and simplifying yields (1).
Another way is to use Thévenin’s theorem to find the Thévenin’s equivalent of the circuit part on the left of nodes d and e.