Cantor proved that the assumption of every point on the real line being accounted for is false. The "smallest line segment" does exist but it is undetectable as much as the number of points on the real line is uncountable.
In other words, you do not understand (yet) the following:
http://www.mathacademy.com/pr/prime/articles/cantor_theorem/index.asp is a clear example of Cantor's theorem as a proof by contradiction, which leads to contradiction if one tries to define mapping between an explicit P(S) member and S member, because of the construction rules of the explicit P(S) member (the member of S must be
AND can't be a member of the explicit P(S) member, according to the construction rules of the explicit P(S) member, under Cantor's theorem).
Also since |P(S)| is not less than |S| (because it is trivial to show that all S members (for example {a,b,c,d,...}) are at least mapped with {{a},{b},{c},{d},...} P(S) members), then by using this fact and the contradiction shown above, one must conclude that P(S) is a larger set than S.
----------------------------------------------
But this is not the only way to look at this case, for example, we are using Cantor's construction method to systematically and explicitly define P(S) members, for example:
By using the trivial mapping between {a,b,c,d,...} S members and {{a},{b},{c},{d},...} P(S) members, we explicitly define P(S) member {}.
Also by using the mapping between {a,b,c,d,...} S members and {{},{a},{b},{c},...} P(S) members, we explicitly define P(S) member {a,b,c,d,...}.
Actually by using Cantor's construction method independently of Cantor's theorem, we are able to explicitly define the all P(S) members between {} and {a,b,c,d,...}.
As a result, there is a bijection between S and P(S) members, as follows:
a ↔ {}
b ↔ {a,b,c,d,...}
c ↔ some explicit P(S) member, which is different than the previous mapped P(S) members
...
etc. ... ad infinitum.
Please be aware of the fact that this construction method has nothing to do with Cantor's theorem exactly because the construction is used independently of Cantor's theorem and therefore it is not restricted to the logical terms of Cantor's theorem.
In other words, the distinction between countable and uncountable infinite sets has no basis.
Actually Dedekind's definition for infinite sets (which according to it there is a bisection between any given infinite set and some proper subset of it) is true also in the case of the mapping between the members of P(S) and the members of S, where S is indeed a proper subset of P(S).
The bijection between the members of P(S) and the members of S is equivalent to the bejection between the members of
N and the members of even numbers, or the members of
Q and the members of
N, etc ...
Yet no one of these sets is complete, because no infinite set of distinct objects has the magnitude of Fullness, which is that has no successor (and a line is the minimal expression of Fullness).