Your reasoning is fine, but you are using a nonstandard form of disjunction elimination. The usual natural deduction formulation is:
From $\vdash p\lor q$ and $p\vdash r$ and $q\vdash r$ infer $\vdash r$.
Compared to yours, this formulation uses the derivability relation $\vdash$ instead of the logical implication $\rightarrow$. It is an easy exercise to see that your version of disjunction elimination derives the standard one using the rule of $\rightarrow$-introduction.
Conversely, here is a derivation of your disjunction elimination from the standard one:
- $\vdash p\lor q$ (premise)
- $\vdash p\rightarrow r$ (premise)
- $\vdash q\rightarrow r$ (premise)
- $p,p\rightarrow r\vdash r$ (MP)
- $p\vdash r$ (from (2) and (4) by cut)
- $q,q\rightarrow r\vdash r$ (MP)
- $q\vdash r$ (from (3) and (6) by cut)
- $\vdash r$ (from (1), (5) and (7) using standard disjunction elimination)
Crucially, this derivation makes use of the modus ponens rule. So one could say that your version of disjunction elimination has some built-in modus ponens, and therefore your initial observation is not surprising.
On the other hand it is not possible to derive modus ponens from the standard disjunction elimination rule. Indeed, if your only rule involving $\rightarrow$ is the $\rightarrow$-introduction rule
From $p\vdash q$ infer $\vdash p\rightarrow q$
then the meaning of $\rightarrow$ is underspecified: you cannot rule out that the interpretation of $p\rightarrow q$ is something silly like a fixed tautology $\top$.