mxd = arcpy.mapping.MapDocument("CURRENT")
df = arcpy.mapping.ListDataFrames(mxd, "Layers")[0]
arcpy.MakeFeatureLayer_management("myFC", "My Layer Name")
addLayer = arcpy.mapping.Layer("My Layer Name")
arcpy.mapping.AddLayer(df,addLayer, "TOP")
sourceLayer = "C:\Data\MySymbology.lyr"
layerSymb = arcpy.mapping.Layer(sourceLayer)
updateLayer = arcpy.mapping.ListLayers(mxd, "My Layer Name", df)[0]
arcpy.mapping.UpdateLayer(df, updateLayer, layerSymb, "TRUE")
arcpy.RefreshTOC()
I had the same problem. I think it is because the "Value Field" is set to "Single symbol" by default. The code below worked for me.
lyr = "path to your layer"
in_symbol_layer = "path to your symbology layer"
addLayer = arcpy.mappling.Layer(lyr)
addLayer.valueField = "the value field you want to use for the symbol"
arcpy.ApplySymbologyFromLayer_management(lyr, in_symbol_layer)