MessageParts.Count is different after savetofile/loadfromfile

I am forwarding saved email and I have discovered a problem. If I
download an HTML formatted email, the messageparts.Count = 6 and I can
use the following code to look at the parts successfully:

for Part := 0 to Msg.MessageParts.Count - 1 do
        begin
          if Msg.MessageParts[Part] is TIdText then
          begin
            if Pos('text/plain', Msg.MessageParts[Part].ContentType) >
0 then
            begin
               memo1.lines.Add('Found text part');
               memo1.lines.AddStrings
(TIdText(msg.messageparts[part]).Body);
            end
            else if Pos('text/html',
Msg.MessageParts[Part].ContentType) > 0 then
            begin
              memo1.lines.Add('Found html part');
              memo1.lines.AddStrings
(TIdText(msg.messageparts[part]).Body);
            end;
          end
          else
          begin
            memo1.lines.Add('Found attachment');
          end;
        end;

If I then save the email to disk using SaveToFile and load it into a
new TIdMessage using LoadFromFile, the MessageParts.Count equals only
2. This even though I can see the whole message in the file. After the
LoadFromFile, the 2 parts are only messages with the content type of
multipart/alternative.

I am trying it on 9.0.3 because before that, the ContentType was not
ever set to parse the message.

Thanks in advance,

Tom Schaefer