you might try testing if the style exists ie
public void AddPlotStyle(string PlotStyleName)
{
Database db = AcAp.Application.DocumentManager.MdiActiveDocument.Database;
if (db.PlotStyleMode == false)
{
using (Transaction tr = db.TransactionManager.StartTransaction())
{
using (PlaceHolder hldr = new PlaceHolder())
{
DictionaryWithDefaultDictionary d =
(DictionaryWithDefaultDictionary)tr.GetObject
(db.PlotStyleNameDictionaryId, OpenMode.ForWrite);
if (!d.Contains(PlotStyleName))//added
d.SetAt(PlotStyleName, hldr);
tr.Commit();
}
}
}
}