Internally, interfaces::HandlerImpl keeps a member of the boost::signals2::scoped_connection type https://github.com/bitcoin-core/gui/blob/192d639a6b1bd0feaa52e6ea4e63e33982704c32/src/interfaces/handler.cpp#L21 which automatically disconnects on destruction.
Therefore, manual disconnections are redundant in class destructors.