Implement bilinear interpolation