The simplest thing is to take that content and wrap it into a single new root node so that you can parse it as XML.
Let's assume you have a bunch of those nodes in text file incidents.log
We can use Select-Xml, but we need to wrap the xml so there's only one root node (XML only allows one). Let's call that node "x"
$LogText= Get-Content incidents.log
Select-Xml -content "$messages" -xpath "//msg[@type='INCIDENT_ERROR']"
The xpath here is very simple, it says find a node at any depth that is named "msg" ("//msg") and that has an attribute named type ([@type]) with the value of "INCIDENT_ERROR" (='INCIDENT_ERROR').
You should get back one or more XmlNode objects that you can do whatever you want with.