Did you tried to code it? If so could you show me the code?
I highly suspect you are thinking the same way I discussed with @spanev previously, but just forget to get the diagonal to extract the result.
The weights won’t be shared between channels indeed. But all your kernel will be applied to all input channels.