No. Here is a counterexample (you seem to be sorting integers in decreasing order): $60, 50, 40, 29, 20$ and $2$ buckets. Your algorithm creates one bucket with sum $109$ and one bucket with sum $90$, while there exists a solution having a bucket with sum $99$ and the other with sum $100$.
Besides, if you algorithm worked then it could be used to solve the partition problem in polynomial-time, showing that $\mathsf{P}=\mathsf{NP}$. Indeed, given a set of integers $S$, there is a way to bucket the numbers in $S$ into $2$ buckets with maximum sum $\frac{1}{2} \sum_{x \in S} S$ if and only if the answer to the corresponding partition instance is "yes". Notice that partition remains NP-hard when the integers in $S$ are distinct.
For constant $k$ you can solve your problem in pseudopolynomial time using dynamic programming.
Let $x_1, \dots, x_n$ be the integers in your instance, let $M = \max_{i=1,\dots, n} x_i$, and $\vec{s} = (s_1, s_2, \dots, s_{k-1}) \in \{0, 1, \dots, M\}^{k-1}$.
Call $OPT[i, \vec{s}]$ the minimum possible sum of the elements in the $k$-th bucket when only the first $i$ elements are considered and the sum of the elements in $j$-th bucket with $j < k$ can be at most $s_j$.
Also let $(\vec{s}_{-j}, s'_j)$ denote the vector $\vec{s}$ in which the $j$-th component has been replaced by $s'_j$.
For $i = 0$ and all $\vec{s}$, $OPT[i, \vec{s}] = 0$.
For $i \ge 1$:
$$
OPT[i, \vec{s}] = \min\left\{OPT[i-1, \vec{s}] + x_i, \min_{\substack{j=1,\dots,k-1 \\ x_i \le s_j}} OPT[i-1, (\vec{s}_{-j}, s_j - x_i) ] \right\},
$$
where the minimum over an empty set is $+\infty$.
The value of the optimal solution is:
$$
\min \{ x \mid x \in \{ 0, 1, \dots, M \} \wedge OPT[n, (x, x, \dots, x)] \le x \}.
$$
The optimal solution itself can be recovered by retracing the optimal choices of the minimum backwards.