A more elementary proof. (Note that although the text here is certainly my own work, I did not invent the idea of this proof. It came from an old book I once read, but I can't find a reference for it.)
We will begin by showing that the determinant of $f(A)$ is $f(\lambda_1) \dots f(\lambda_n)$.
By the fundamental theorem of algebra, the polynomial $f(x)$ can be factorised into $k$ linear factors over the complex numbers. Hence we can write $f(x) = a_k (x - c_1) \dots (x-c_k)$ for some complex numbers $c_1$, ..., $c_k$. Now a matrix commutes with all its powers, and with the identity, so it is also possible to write $f(A)$ as $f(A) = a_k (A - c_1 I) \dots (A - c_k I)$.
Also, denote the characteristic polynomial of $A$ by $p(\lambda) = | \lambda I - A|$. Since the eigenvalues of $A$ are $\lambda_1, \dots, \lambda_n$, the characteristic polynomial can be factorised as $p(\lambda) = (\lambda - \lambda_1)\dots(\lambda - \lambda_n)$.
Consider the determinant of $f(A)$: $ \begin{align} |f(A)| &= |a_k (A - c_1 I) \dots (A - c_k I)|\\ &= (a_k)^n |A - c_1 I| \dots |A - c_k I| \\ &= (a_k)^n |-(c_1 I - A)| \dots |-(c_k I - A)|\\ &= (a_k)^n (-1)^n |c_1 I - A| \dots (-1)^n |c_kI - A|\\ &= (a_k)^n (-1)^{nk} |c_1 I - A| \dots |c_k I -A| \end{align} $ Now $|c_i I - A|$ is $|\lambda I - A|$ with $\lambda$ replaced by $c_i$, that is, it is the characteristic polynomial of $A$ evaluated at $\lambda = c_i$. Thus $|c_i I - A| = p(c_i) = (c_i - \lambda_1)\dots(c_i - \lambda_n)$. \begin{align} \text{So, } |f(A)| &= (a_k)^n (-1)^{nk} p(c_1) \dots p(c_k)\\ &= (a_k)^n (-1)^{nk}\times (c_1 - \lambda_1) \dots (c_1 - \lambda_n)\\ &\phantom{= (a_k)^n (-1)^{nk}}\ \times \dots\\ &\phantom{= (a_k)^n (-1)^{nk}}\ \times (c_k - \lambda_1) \dots (c_k - \lambda_n)\\ &= (a_k)^n \times (\lambda_1 - c_1) \dots (\lambda_n - c_1)\\ &\phantom{= (a_k)^n}\ \times \dots\\ &\phantom{= (a_k)^n}\ \times (\lambda_1 - c_k) \dots (\lambda_n - c_k)\\ &= (a_k)^n \times (\lambda_1 - c_1) \dots (\lambda_1 - c_k)\\ &\phantom{= (a_k)^n}\ \times \dots\\ &\phantom{= (a_k)^n}\ \times (\lambda_n - c_1) \dots (\lambda_n - c_k)\\ &= \phantom{\times}\ a_k (\lambda_1 - c_1) \dots (\lambda_1 - c_k)\\ &\ \phantom{=} \times \dots\\ & \ \phantom{=} \times a_k (\lambda_n - c_1) \dots (\lambda_n - c_k)\\ &= f(\lambda_1) \times \dots \times f(\lambda_n) \end{align}
The above argument shows that if $f(x)$ is any polynomial, then $|f(A)| = f(\lambda_1)\dots f(\lambda_n)$.
Now we will show that the eigenvalues of $f(A)$ are $f(\lambda_1)$, \dots, $f(\lambda_n)$.
Let $a$ be any number and consider the polynomial $h(x) = a - f(x)$. Then $h(A) = aI - f(A)$, and the argument above shows that $|h(A)| = h(\lambda_1) \dots h(\lambda_n)$. Substituting the formulas for $h(x)$ and $h(A)$ into this equation gives that $|aI - f(A)| = (a - f(\lambda_1))\dots (a-f(\lambda_n))$.
Since this is true for all possible $a$, it can be concluded that as polynomials, $|\lambda I - f(A)| = (\lambda - f(\lambda_1))\dots(\lambda - f(\lambda_n))$. But $|\lambda I - f(A)|$ is the characteristic polynomial of $f(A)$, which has been fully factorised here, so this implies that the eigenvalues of $f(A)$ are $f(\lambda_1)$, ..., $f(\lambda_n)$.