This is a generic proof question which I thought of it in a different way different from others and needing a proof confirmation if any of the details are missing.
I use the following lemma:
Let $W_1$ and $W_2$ be subspaces of a finite-dimensional vector space $V$. Let $S$ be a basis for the subspace $W_1 \cap W_2$. There are sets of vectors $T_1$ and $T_2$ such that $S \cup T_1$ is a basis for $W_1$ and $S \cup T_2$ is a basis for $W_2$. Also $S \cup T_1 \cup T_2$ is a basis for $W_1 + W_2$.
Claim: $\dim(W_1+W_2) = \dim(W_1)+\dim(W_2)-\dim(W_1 \cap W_2)$
Proof:
Let $S = \{x_1, ..., x_n\}$ be a basis for $W_1 \cap W_2$.
$\implies \dim(W_1 \cap W_2)=n.$
By the lemma, $\exists \ T_1$ such that $S \cup T_1$ is a basis for $W_1$. Define $T_1 = \{y_1,...,y_a\}$.
$\implies S \cup T_1= \{x_1,...,x_n, y_1,...,y_a\}$.
$\implies \dim(W_1) = | S \cup T_1|=n+a$.
Furthermore, $\exists \ T_2$ such that $S \cup T_2$ is a basis for $W_2$. Define $T_2 = \{z_1,...,z_b\}$.
$\implies S \cup T_2= \{x_1,...,x_n, z_1,...,z_b\}$.
$\implies \dim(W_2) = | S \cup T_2|=n+b$.
Then the claim can be re-written as the following:
$\dim(W_1+W_2) = (n+a)+(n+b)-n=n+a+b$
Also, by the lemma we have that $S \cup T_1 \cup T_2$ is a basis for $W_1+W_2$.
Defined as the following, $S \cup T_1 \cup T_2 = \{x_1,...,x_n,y_1,...,y_a,z_1,...,z_b\}$.
$\implies \dim(W_1+W_2)=|S \cup T_1 \cup T_2|=n+a+b$.
Thus we can see that the claim does hold as needed.
If there is anything you can possibly point out, please do so. Will be appreciated!
Your proof looks good, though you may benefit from explicitly mentioning why $ S $, $ T_1 $, and $ T_2 $ are pairwise disjoint, as the result $ | S \cup T_1 \cup T_2 | = n + a + b $ fails without this. You could also shorten the proof by appealing to the Inclusion Exclusion Principle on $ S \cup T_1 $ and $ S \cup T_2 $.