Как правильно сравнивать объекты ?
Вы не правильно пользуйтесь instanceof , он проверят объект, а вы ему имя класса подсовываете.is_subclass_of , может проверять по имени классу, по этому он success.
Из выше сказанного, остальные fail т.к:
1. неправильное использование оператора instanceof;
2. для проверки реализации нужного интерфейса, нужно указывать полное имя класса (интерфейса), т.е включая его namespace;
use common\modules\notification\interfaces\NoticeInterface;

class NoticeModel implements NoticeInterface {
  // .. реализация
}

$noticeModel = new NoticeModel();
if ($noticeModel instanceof NoticeInterface) {
   // как-то так
}

if(is_subclass_of(get_class($noticeModel), NoticeInterface::class) {
   // вот так еще начиная с php5.5+
}