Вот версия c #, которая будет работать
XDocument d = XDocument.Load(xmlFileName);
var sum = d.Root.Descendants("Item").Where(i => i.Element("ItemPrice")
.Element("Component")
.Element("Type")
.Value == "Principal")
.Sum(i => Convert.ToDouble(i.Element("ItemPrice")
.Element("Component")
.Element("Amount")
.Value));
Посмотрите, можете ли вы использовать конвертер, такой как http://converter.telerik.com/, для конвертации в vb.net и использовать его.
Вот что я получил от автоматического преобразования.
Dim d As XDocument = XDocument.Load(xmlFileName)
Dim sum = d.Root.Descendants("Item").Where(Function(i) i.Element("ItemPrice").Element("Component").Element("Type").Value = "Principal").Sum(Function(i) Convert.ToDouble(i.Element("ItemPrice").Element("Component").Element("Amount").Value))
EDIT:
Переключено с Convert.ToInt64()
на Convert.ToDouble()
.