In the textbook I'm currently studying, it has somewhat concise detail about $C^k$ boundaries. The definitions it uses are as follows.
Definition: A domain (connected open set) $\Omega$ in $\mathbb{R}^N$ with topological boundary $\partial \Omega$ is said to have $C^k$ boundary, for $k \geq 1$, if there exists an open neighbourhood $U$ of $\partial \Omega$ in $\mathbb{R}^N$ and a $C^k$ function $\rho: U \to \mathbb{R}$ such that $\Omega \cap U = \rho^{-1}((-\infty, 0))$ and $\nabla\rho \neq 0$ on $\partial \Omega$. The function $\rho$ is then called a $C^k$ defining function for $\Omega$.
It then leaves as an exercise that for $k \geq 1$, a domain $\Omega$ has a $C^k$ defining function if and only if $\partial \Omega$ is a $C^k$ manifold of dimension $N - 1$. I have tried the forward direction and I would like some feedback about my reasoning.
($\implies$) Let $\rho: U \to \mathbb{R}$ be a $C^k$ defining function. By continuity and the fact that $\Omega \cap U = \rho^{-1}((-\infty, 0))$, we have $\partial \Omega \subseteq \rho^{-1}(\{0\})$ (I'm not sure that it can be argued with these conditions that this is in fact an equality). Furthermore, as a topological subspace of $\mathbb{R}^N$, $\partial \Omega$ is second-countable and Hausdorff.
Let $a \in \partial \Omega$. Since $\nabla \rho \neq 0$ on $\partial \Omega$, there exists a partial derivative $\dfrac{\partial \rho}{\partial x_i}(a) \neq 0$ for some $1 \leq i \leq N$. By the implicit function theorem, we can find an open neighbourhood $V_a$ of $a$ in $U$ such that $V_a \cap \partial \Omega$ is the graph of an equation of the form $$x_i = f_a(x_1, \dots, \widehat{x_i}, \dots, x_N),$$ (the hat denotes an omitted coordinate) where $f_a$ is a $C^k$ function defined on an open subset $W_a$ of $\mathbb{R}^{N - 1}$. For each $a \in \partial \Omega$, we can then define the graph coordinates $$\varphi_a: V_a \cap \partial \Omega \to W_a, \quad \varphi_a(x_1, \dots, x_N) = (x_1, \dots, \widehat{x_i}, \dots, x_N),$$ which imply that $V_a \cap \partial \Omega$ is locally Euclidean of dimension $N - 1$ for all $a \in \partial \Omega$. So $\partial \Omega$ is a topological manifold of dimension $N - 1$.
To see that $\partial \Omega$ has $C^k$ structure, we note that our graph coordinates define $C^k$ transition maps. Explicitly, every transition map is of the form (for the case that $i < j$, the case of $j < i$ is similar) $$(\varphi_a \circ \varphi_b^{-1})(x_1, \dots, \widehat{x_j}, \dots, x_N) = (x_1, \dots, \widehat{x_i}, \dots, f_b(x_1, \dots, \widehat{x_j}, \dots, x_N), \dots, x_N),$$ where $f_b(x_1, \dots, \widehat{x_j}, \dots, x_N)$ lies in the $j$-th slot, or is the identity map in the case that $i = j$. This shows that $\partial \Omega$ is a $C^k$ manifold of dimension $N - 1$.
My primary concerns with my reasoning is that I'm not sure whether I have argued correctly in the last paragraph (or the rest of it really), and that the condition that $\Omega \cap U = \rho^{-1}((-\infty, 0))$ seems almost irrelevant in my reasoning (which makes me feel like I'm missing something). Perhaps I use this fact in the application of the implicit function theorem, because I would supposedly need to know the value of $\rho$ on $\partial \Omega$, but that seems feeble at best. For my concern on the overlaps, it feels like I have overlooked something like a patching argument regarding the $f$'s, but I'm not sure. Any feedback would be greatly appreciated!