Trying to understand the fundamental group of $SO(3)$ using quaternions - PART $2$. This is a follow up question to this question, which I have previously asked in MSE.
This is mainly an update to my understanding of the concern, and I decided to create a new question since the one I linked is answered but my update leads to new doubts, which aren't answered in the answer.
Here goes my full idea:
The logic thinking behind my resolution.
My resolution is mainly based at this answer.
It is well-known that $SU(2)$ is a two-sheet cover of $SO(3),$ when seen as being the set that contains all the unit quaterions that can be mapped to a rotation in $SO(3).$ We call this covering map $p.$
The following step would be to show that there are at least two elements in $\pi_1(SO(3))$ - this follows directly since $SU(2)$ is a $2-$sheet cover of $SO(3)$ - I believe I understood the logic behind this.
Now, consider an arbitrary loop in $SO(3),$ which I denote by $\lambda,$ with basepoint $r$, i.e., $\lambda(0)=\lambda(1)=r.$ This loop lifts uniquely to a path in $SU(2)$, which I denote by $\tilde \lambda$, such that $\tilde \lambda (0) = q$ (note that $q \in p^{-1}(r)).$  Now, there are two obvious possibilities: since $\tilde \lambda$ is a lift of $\lambda$ and $\lambda(1) = r,$ it follows that either $\tilde \lambda (1)=q$ or $\tilde \lambda (1) = -q.$
CASE $1$: In the first case, i.e., the case where $\tilde \lambda (1)=q,$ $\tilde \lambda$ is a loop in $SU(2)$ and thus, it is contractible to the constant loop, $\tilde c,$ in $SU(2).$ We can project down this contraction and we get the respective contraction in $SO(3),$ which tells us that our original loop $\lambda$ in $SO(3)$ is contractible to the constant path, $c$, in $SO(3).$
This shows that every loop with basepoint $r$ in $SO(3)$ such that the unique lift of this loop in $SU(2)$ starting at $q$ also ends in $q$ is path homotopic to the constant loop, $c$, in $SO(3).$
Now comes my concern.
My concern - How to deal with CASE $2$ - My logic
Now, let us consider that the lift $\tilde \lambda$ is one such that $\tilde \lambda (0) = q$ and $\tilde \lambda (1) = -q.$ Since $SU(2)$ is simply connected, the following lemma is of useful help:
Lemma. Let $X$ be simply connected. Then any two paths in $X$ having the
same initial and final points are path homotopic.
This means that our path $\tilde \lambda$ is path homotopic to every path in $SU(2)$ with initial point $q$ and endpoint $-q$. We can project such homotopy down to $SO(3)$, and this would tell us that every two loops in $SO(3)$ with basepoint $r$ such that its lifts in $SU(2)$ starting at $q$ finishes at $-q$ are path homotopic.
This concludes the "exercise".
I am concerned about my interpretation of the second case, because the original answer to my last point states:

Suppose you have any loop λ:[0,1]→SO(3) with λ(0)=λ(1)=p. Then this
loop will lift uniquely to a loop λ~ on SU(2) with λ~(0)=q. Now there
are two possibilities: λ~(1)=q, or λ~(1)=−q. In the first case, λ~ is
a loop, and we can contract this loop on SU(2). Projecting this
contraction down, we see that λ is path-homotopy-equivalent to the
"identity loop" on SO(3).
In the other case, we see that λ is not the identity. However, if you
have another path λ′:[0,1]→SO(3) that lifts to λ~′ with λ~′(0)=q and
λ~′(1)=−q, then the concatenation λ⊕λ′ lifts to λ~⊕(−λ~′), which is a
loop on SU(2) and therefore path-homotopy-equivalent to the identity.

And I can't see how my logic is wrongfull. I also can't see how this part of the answer deals with case $2.$
Thanks for any help in advance.
 A: You are right, your argument after the Lemma shows that every two loops in $SO(3)$ with basepoint $r$ which lift to paths in $SU(2)$ starting at $q$ and ending at $-q$ are path homotopic (i.e represent the same element in $\pi_1(SO(3)$). Since such loops exist (map any path in $SU(2)$ starting at $q$ and ending at $-q$ to $SO(3)$), you have shown that $\pi_1(SO(3))$ has exactly two elements.
But also the quoted answer correctly treats case 2. One considers two loops $\lambda, \lambda' : [0,1] \to SO(3)$ with basepoint $r$  which lift to paths $\tilde \lambda, \tilde \lambda' : [0,1] \to SU(2)$ starting at $q$ and ending at $-q$. The path $-\lambda' : [0,1] \to SU(2), (-\lambda')(t) = -\lambda'(t)$, starts at $-q$ and ends at $q$. It is also a lift of  $\lambda'$ because all pairs of points $x, -x$ of $SU(2)$ are mapped to the same point of $SO(3)$. The concatenation $\tilde \lambda \oplus - \tilde \lambda'$ is a loop in $SU(2)$ with basepoint $q$ which maps to the loop $\lambda \oplus \lambda'$ in $SO(3)$. Since $SU(2)$ is simply connected, $\tilde \lambda \oplus - \tilde \lambda'$ is null-homotopic, hence also $\lambda \oplus \lambda'$ is null-homotopic. This means that
$$[\lambda] [\lambda'] = \text{ neutral element of } \pi_1(SO(3)) \tag{1}$$
i.e. $[\lambda'] = [\lambda]^{-1}$. Applying $(1)$ for $\lambda = \lambda'$ shows that  $[\lambda] = [\lambda]^{-1}$ so that
$$[\lambda'] = [\lambda]$$
for any two loops $\lambda,\lambda'$ as above.
