I know this is months late but for the record, the download happens when EndInit is called, any other changes to properties after this is discarded. Using constructors other than the default constructor will automatically initialize the image.
In other words:
var Image = new BitmapImage(new Uri("http://...", UriKind.Absolute));
// The image is now intialized and is downloading/downloaded
Image.CreateOptions = BitmapCreateOptions.None; // nothing happens here
If you want to set a property you initialize manually like this:
var Image = new BitmapImage();
Image.BeginInit();
Image.UriSource = new Uri("http://...", UriKind.Absolute)
Image.CreateOptions = BitmapCreateOptions.None; // This is default anyway so it won't affect
// ..Setting other properties...
Image.EndInit();