Boole Cut Surface Material
I found this question to be interesting so I did some research on it.

What I found out is that you need to add slots for all materials to the main object. The cutting objects will assign material IDs for its material to the cut out faces.

In the scene below I have created a green cube and a red cube that cuts from the blue cube.

I didn't know this. Neat!