If I understand the code correctly, it seems you are trying to use two different kernel in the second approach?
If that’s the case and each kernel should only be applied to the corresponding input channel, you could try to use a depthwise convolution via groups=2.