Get difference equation of a filter from MATLAB transfer function coefficients
There are two problems with your code. First, you should not invert every other $b$ coefficient, they should all have a positive sign, just like the $a$ coefficients that all have a negative sign. Second, - and that's the main problem -, why do you quantize the coefficients? Your actual coefficient $b[1]$ is 0.00266475348894505 (and even longer), and you rounded it to 0.0027. That's bad for the $b$ (numerator) coefficients, but detrimental for the $a$ (denominator) coefficients, because the filter's characteristic is significantly changed, and the filter can become unstable. You should just use the coefficients as stored in the vectors A and B.

Implementing the difference equation is a nice exercise to understand what's going on, but I think you'd be better off using filter.m.