Particular Solution to Difference Equation
The solution you came up with is the correct homogeneous solution (i.e., when $x[n]=0$). Thing is, this is a non-homogeneous difference equation, and its solutions are of the form
$$y[n]=y_h[n]+y_p[n]=k_1\Big(\frac{1}{2}\Big)^nu[n]+ k_2\Big(\frac{-1}{4}\Big)^nu[n]+y_p[n]$$
where $y_p[n]$ is the particular solution that solves for the $x[n]$ term, and you are missing the corresponding particular solution in your evaluation. One way to find $y_p[n]$ is to guess the form of $y_p[n]$ with unknown coefficients given the form of $x[n]$, and use the method of undetermined coefficients to find those coefficients.
For $x[n]=r^nu[n]$, you would try $y_p[n]=ar^nu[n]$ at first. But, in this case $x[n]$ corresponds to a mode of the system. Therefore, the particular solution cannot be of the form $a(\tfrac{1}{2})^nu[n]$, but it has to be of the form $an(\tfrac{1}{2})^nu[n]$. Therefore, the solution of the equation is
$$y[n]=k_1\Big(\frac{1}{2}\Big)^nu[n]+ k_2\Big(\frac{-1}{4}\Big)^nu[n]+an\Big(\frac{1}{2}\Big)^nu[n],$$
and you find $a$ by evaluating this solution in the equation.