If a plane intersects a regular surface at exactly one point, then it is the tangent plane Question
Let a regular surface, $S$, intersect a plane, $P$, at only one point, $p_0 = (x_0, y_0, z_0)$ in $\mathbb{R}^3$. Show that the plane coincides with the tangent plane to the surface at $p_0.$
Remarks
The problem seems so easy and unassuming, however, I have been stuck on it for several days. I have come up with proofs but I am unconvinced by any so far. Please provide as elementary a proof as possible. Nothing greater than multivariable calculus and some linear algebra (if necessary). I have a feeling that it may be best solved by contradiction but my attempt does not follow this strategy. 
Attempted Proof
Let $S$ be a regular surface and $P$ be a plane which passes through $p_0$. Locally, any regular surfaces may be represented by a function $z=f(x,y)$. 
Hence the tangent plane, $L(x,y)$, to $S$ at $p_0$ is 
\begin{align*}
L(x,y) &= f(x_0, y_0) + f_x(x_0,y_0)(x-x_0) + f_y(x_0,y_0)(y-y_0).
\end{align*}
Generally, a plane, $P$, is given by 
$$
A(x-x_0) + B(y-y_0) + C(z-z_0) = 0.
$$ 
$$
\hat{n}\cdot(\bar{p}-\bar{p_0})
$$
where $\hat{n} = (A,B,C)$ is the normal vector to the plane and $p=(x,y,z)$ is any point on the plane.
Note that since $p$ is on the plane it cannot be on the surface by hypothesis.
Here is where I start to get stuck. Help would be appreciated.
I'm sure that there is a simple way of thinking about, and proving it. Thanks
 A: After applying a rigid motion to $S$ and $P$, we may as well assume $(x_0,y_0,z_0)=(0,0,0)$ and $P$ is the $xy$-plane. Let $U$ be a small neighborhood of the origin in $S$; by taking $U$ to be small enough, we may assume that $U$ is the image of an open disk in $\mathbb R^2$ under a local parametrization, and thus $U$ is homeomorphic to a disk. The hypothesis implies that the origin is the only point of $U$ for which the $z$-coordinate is zero, so $U\smallsetminus\{(0,0,0)\}$ is contained in the set where $z\ne 0 $. Since a disk minus a point is connected, it follows that either $z>0$ on all of $U\smallsetminus\{(0,0,0)\}$ or $z<0$ on all of $U\smallsetminus\{(0,0,0)\}$.  After reflecting in the $xy$-plane, we may assume it is $z>0$.
Now suppose $v$ is a tangent vector to $S$ at the origin. Then there is a smooth curve $c:(-\varepsilon,\varepsilon)\to U$ satisfying $c(0) = (0,0,0)$ and $c'(0) = v$.  If we write $c(t) = (x(t),y(t),z(t))$, we see that $z(t)$ attains a minimum at $t=0$, and therefore $z'(0)=0$. This means that every tangent vector at the origin has zero $z$-coordinate, so $T_{(0,0,0)}S$ is contained in the $xy$-plane (i.e., in $P$).  Since both $T_{(0,0,0)}S$ and $P$ are two-dimensional, they must be equal.
A: This is a purely local theorem. We may assume that $S$ is given in the form
$$(x,y)\mapsto\bigl((x,y,f(x,y)\bigr)$$
where $f$ is $C^1$ in a neighborhood of $(0,0)$, and furthermore that
$$f(0,0)=f_x(0,0)=f_y(0,0)=0\ .$$
So ${\bf 0}=(0,0,0)\in S$, and the tangent plane of $S$ at ${\bf 0}$ is  the plane $z=0$. 
Assume now that we are given a plane
$$ax+by+cz=0,\qquad(a,b,c)\ne(0,0,0),\tag{1}$$
passing through ${\bf 0}$, which is not the plane $z=0$. This entails that at least one of $a$, $b$ is $\ne0$; so lets assume $b\ne0$. The point ${\bf 0}$ is a solution of the system
$$\eqalign{F(x,y,z):=\ \ \ \quad z-f(x,y)&=0\cr
G(x,y,z):=\quad ax+by+cz&=0\ .\cr}\tag{2}$$
Now the matrix
$$\left[\matrix{F_y&F_z\cr G_y&G_z\cr}\right]_{\bf 0}=\left[\matrix{0&1\cr b&c\cr}\right]$$
has determinant $\ne0$. The implicit function theorem then guarantees the existence of two $C^1$-functions $x\mapsto\phi(x)$ and $x\mapsto\psi(x)$, defined in a neighborhood of $x=0$ and taking the value $0$ at $0$, such that all points $(x,y,z)$ of the form
$$\bigl(x,\phi(x),\psi(x)\bigr)$$
satisfy the system $(1)$. But this is saying that the plane $(1)$ intersects $S$ in a smooth curve passing through ${\bf 0}\in S$.
A: Is this a good proof?
Proof: Let $\vec{x}(u,v):U \rightarrow S$ be a coordinate function of $S$ and 
$$
p=\vec{x}(q),
$$ 
where $q = (u_0,v_0)$. 
Assume that the plane $P$ is given by 
$$
ax(u,v) + by(u,v) + cz(u,v) + d = 0.
$$
Assume, without loss of generality, that $d=0$, so we have 
$$
ax(u,v) + by(u,v) + cz(u,v) = 0. \tag{1} 
$$
Since $S$ meets the plane at the single point $p$, $q=(u_0,v_0)$ satisfies eq. (1). 
Moreover, by eq. (1) , we see that $\vec{n} = (a,b,c)$ is orthogonal to the plane $P$. 
Taking the partial derivatives of eq. (1) and plugging in $q$ gives 
$$
ax_u(q) + by_u(q) + cz_u(q) = \vec{n} \cdot \vec{x}_u(q) = 0
$$
$$
ax_v(q) + by_v(q) + cz_v(q) = \vec{n} \cdot \vec{x}_v(q) = 0.
$$
Then $\vec{n}$ is orthogonal to the plane spanned by $\vec{x_u}(q) \wedge \vec{x_v}(q)$, i.e., $T_pS$. 
Since $\vec{n}$ is orthogonal to both the $P$ and $T_pS$, $P$ and $T_pS$ are coincident. 
