Shouldn't the  `styleFunction`  of the feature be used prior to `styleFunction` of the layer ? 

In case of KML, when you have a feature without style defined you want the default style of the layer is applied 
but if a style is defined you want to see it whatever if a layer has a style defined or not.

I hope that makes sense.