Convolution of Two Kernels [OpenCV]
To answer your specifiy questions:


  Is the cv2.filter2D() function able to convolve two kernels?


Yes, but by default, it actually computes the correlation, not the convolution. However, the only difference is that the filter kernel (your second kernel) needs to be flipped. See OpenCV documentation for filter2D.


  Where does my logic/understanding begin to fail? (i.e. what topics/concepts am I completely not understanding?)


I think one more issue is the size of the resulting kernel.
The filter2D function returns an "output image of the same size and the same number of channels as src". However, the combined kernel increases is size (the combined size should be f1-size + f2-size - 1). So before you apply filter2D, you should add a black border to the first kernel.