In deinem eigenen Programm bleibt dir denke ich nur einen Hook auf LoadLibrary zu setzen und zu schauen was da alles geladen wird nachdem du selbst LoadLibrary aufgerufen hast.
Mit dem (edit: gerade schon genannten)
Process Monitor siehst du direkt welche DLLs (und andere Dateien) wo gesucht werden bevor der Fehler kommt und mit dem
API Monitor kannst du die Aufrufe an LoadLibrary auch extern nachverfolgen (wäre hier aber etwas viel Aufwand, nur der Vollständigkeit halber).