What does it do when it goes wrong? Could you give some examples?
I'd note that since you're using eregi, you don't need to use strlower.
I'd also recommend the preg_match function instead - partly because I don't know how the ereg "." handles newlines, but I do know how to work with the preg syntax:
preg_match('|<title>(.*)</title>|is', $RetrieveFile, $TagContent);
Of course, any whitespace within the title tags will cause trouble if we don't account for it:
preg_match('|<\s?title\s?>(.)</\s?title\s*?>|is', $RetrieveFile, $TagContent);
I can't think offhand of any attributes or stuff that might also appear in a <title> tag.
If this isn't a help, then more detail will help towards a more appropriate response.