I'll propose an alternative approach. Warn the user as soon as they mark multiple products of different types that they won’t be able to combine them but still allow them to be marked anyway. Assuming the process or marking and unmarking a product is quick and easy, this is better than preventing me from marking the second product.
For example, if I mark two products of type A and then try to mark a third product of type B, you should warn me that I won’t be able to combine those products (and explain why) but still allow the third product to be marked. That way, I am free to decide which product(s) to unmark in my own time (I might decide that I actually want to combine type B products and so remove the two type A products).