Basic but important question: Are you running this python script within ArcMap? Using arcpy.mapping.MapDocument(“CURRENT”) requires to be run within the MXD. It can't be run "outside" of MXD environment.
I agree with reevesii's comment. Try making all caps on “”subject” so it looks like this:
if “SUBJECT” in dataset:
The line Before says the dataset is put into all caps by dataset.upper() . Please note that all layers you add to MXD this way will in caps.