I do this in python to update my publication date in the metadata when I truncate and fill a layer from our edit database to our main database. It works pretty well for me.
def UpdateMetadataPublicationDate(LayerToUpdate):
LayerToUpdate = string.split(LayerToUpdate,'\\')[-1]
sde = r'Database Connections\SDE.sde'
sde_conn = arcpy.ArcSDESQLExecute(sde)
sql = '''USE GIS;DECLARE @now varchar(19) = convert(varchar(19),GETDATE(), 126);UPDATE GIS.sde.GDB_ITEMS SET Documentation.modify('replace value of (//metadata/dataIdInfo/idCitation/date/pubDate/text())[1] with sql:variable({0})') where Name = \'{1}\''''.format('\"@now\"',LayerToUpdate)
sde_conn.startTransaction()
sde_conn.execute(sql)
sde_conn.commitTransaction()