accounting for over saturation using Filter2D?

i am using filter2d to convolve an image. as i understand convolution, to make sure that the pixels do not over saturate (turn to white) i would normalize each pixel after it has been convolved by dividing it by the sum of the pixels in the kernel.

but since i am using a very large 30x30 kernel to convolve, filter2d is using cross correlation, which uses discrete fourier transforms.

how would i prevent over saturation when using discrete fourier transforms?