There is nothing wrong with your code, I ran it and I see a slight blur in the output image. If you want to see a more pronounced effect, change it to an edge-detection kernel, for example by using
float[] matrix = {
1, 0, -1,
0, 0, 0,
-1, 0, 1
};
BufferedImageOp op = new ConvolveOp(new Kernel(3, 3, matrix));