This method is returning false. For the sites that updated successfully, this method returned false.
If you read the code comments for the "ForceCheckForUpdate()" function you'll see this:
/// <summary>Check for updates forcefully -- returns true if the updating has begun. Use the "CheckingFailed", "UpdateAvailable", or "UpToDate" events for the result.</summary> /// <param name="recheck">Recheck with the servers regardless of cached updates, etc.</param>/// <returns>Returns true if checking has begun, false otherwise.</returns>
Thus, the return code you're looking at doesn't mean what you think it means. What you want to look at is the result in one of the many events. Why? Because the update checking is asynchronous.
Also, the AutomaticUpdater checks for updates automatically (hence the name). There's no need to forcefully check for updates. Just use the DaysBetweenChecks property.