Stable normal bundle and immersions Corollary 9 in these notes by Ralph Cohen has grabbed my attention.

I do not undestand how to show that if we have a rank $k$ bundle which is stably isomorphic to the stable normal bundle then there is a virtual normal bundle of rank $k$.

This seems to boil down to proving the following thing:
Let $M^m$ a smooth manifold  and suppose we are given $f:M^m\to BO(k)$. Let  $n>k$ and let $g: M^m\to BO(n)$ be such that
$$TM\oplus g^*(EO(n)) \simeq \varepsilon^{n+m}.$$
In other words, $g$ is the classifying map for a virtual normal bundle of rank $n$ ($\varepsilon$ is the trivial bundle).
Suppose that $g$ is homotopic to $i\circ f$ where $i:BO(k)\to BO(n)$ is the obvious inclusion. Then we would like to show that
$$TM\oplus f^*(EO(k)) \simeq \varepsilon^{k+m}.$$
However the only thing I can conclude from the homotopy $g\simeq i\circ f$ is that
$$TM\oplus f^*(EO(k))\oplus \varepsilon^{n-k} \simeq \varepsilon^{n+m},$$
which is not enough in general.
 A: This follows from obstruction theory; also see this answer.
If $E \to X$ is a rank $r$ real vector bundle over a CW complex $X$, then the obstructions to finding a nowhere-zero section lie in $H^i(X; \pi_{i-1}(S^{r-1}))$. In particular, if $r > \dim X$, then such a section exists so $E\cong E_0\oplus\varepsilon^1$ where $E_0$ has rank $r - 1$. However, $E_0$ may not be unique. For example, the bundle $\varepsilon^{n+1} \to S^n$ has rank $r = n+1 > n$ and decomposes as $\varepsilon^n\oplus\varepsilon^1$ and $TS^n\oplus\varepsilon^1$.
The obstructions to the uniqueness of a nowhere-zero section up to scale lie in $H^i(X; \pi_i(S^{r-1}))$. In particular, if $r > \dim X + 1$, then $E$ admits a unique nowhere-zero section up to scale, so $E \cong E_0\oplus\varepsilon^1$ where $E_0$ has rank $r - 1$ and is unique up to isomorphism. Note, in the example above, $r = \dim X + 1$. If the rank of $E_0$, namely $r - 1$, is still larger than $\dim X + 1$, then we can apply the same argument to split off a trivial line bundle with a unique complement. It follows that if $V\oplus\varepsilon^p \cong W\oplus\varepsilon^p$ and $\operatorname{rank} V = \operatorname{rank} W > \dim X$, then $V \cong W$. In particular, if $\operatorname{rank} V > \dim X$ is stably trivial, then it is in fact trivial.
Since $TM\oplus f^*(EO(k))$ is stably trivial and $TM\oplus f^*(EO(k))$ has rank $m + k > m = \dim M$, we see that $TM\oplus f^*(EO(k)) \cong \varepsilon^{m+k}$.
