A ver pon el resultado de los dos arrays que estás tratando con un print_r antes de pasar $resta por el array_filter(); Es decir, haz esto con los resultados que te van bien y con los que te van mal y el código que estés utilizando, si no los palos de ciego los doy yo.
Así podré ver como son los arrays.