Rudin 2.43 Every nonempty perfect set in $\mathbb{R}^k$ is uncountable
Note that nowhere in the proof is used the fact that $x_n$ should lie in $V_n$. The only point is that $V_n$ intersects $P$, so it is a neighbourhood of at least one point in $P$, no matter which one.
The fact that $x_1\in V_1$ may be confusing, but that's just to initiate the sequence.
Note: to construct $V_{n+1}$ simply select any open ball centered around a point in $V_n\cap P$ that is not $x_n$, with radius small enough that the closed ball lies entirely in $V_n$. All requirements are trivially satisfied.