Your thought falls short of a rigorous proof. It can hardly be considered correct intuition since it does not use the condition that each Turing machine is labelled with some number, although it does use the condition that each $k$ corresponds to a Turing machine. Your "proof" would work equally well if the condition "$M_1,M_2$,... is an enumeration of all TMs" is replaced by "$M_1,M_2$,... is an enumeration of some TMs"
Here is a formal proof.
Suppose $L$ is recognizable. Then by definition, $L$ is the language accepted by some Turing machine $M_k$ for some $k$. Consider $a^k$.
- If $a^k$ is not in the language accepted by $M_k$, then by definition of $L$, $a^k\in L$. By the definition of $M_k$, $a^k$ is accepted by $M_k$, which is a contradiction.
- If $a^k$ is in the language accepted by $M_k$, then by definition of $L$, $a^k\not\in L$. By the definition of $M_k$, $a^k$ is not accepted by $M_k$, which is a contradiction.
Since we always get a contradiction, our assumption $L$ is recognizable must be wrong.
Here is an easier proof, as presented in your comment.
For all $n$, $L\not=L_n$, since $a^n\in L$ $\Leftrightarrow$ $a^n\not\in L_n$, i.e, the membership of $a^n$ in $L$ and the membership of $a^n$ in $L_n$ is different. Since $L_n$ for all $n$ enumerates over all recognizable languages, $L$ is not recognizable.
In fact, the construction of $L$ uses the classic technique to construct a non-member of a given set, the diagonal argument that was discovered/created by the great mathematician Georg Cantor. "It has been used in a wide range of proofs, including the first of Gödel's incompleteness theorems and Turing's answer to the Entscheidungsproblem. Diagonalization arguments are often also the source of contradictions like Russell's paradox and Richard's paradox." The proof of the undecidability of the halting problem can be considered as an application of the diagonal argument as well.