My bad, the two sets of information are identical, accessing them is just different.
For instance,
([Microsoft.ConfigurationManagement.ApplicationManagement.Serialization.SccmSerializer]::Deserialize
FromString($app.SDMPackageXML)).DeploymentTypes[0].Installer
and
([xml]($app.SDMPackageXML)).AppMgmtDigest.DeploymentType.Installer.RequiresLogon
will give the same result.
At first, I did not identify it for I thought, values without braces did not contain more properties.