Because Canon's flash metering system is based on metering ambient light well before the photo is taken, and flash right before the photo is taken. If ISO was allowed to vary, then it may be that what the camera found useful for ambient light is not at all useful for flash. But when that's found out, it's too late, since the user has at that time already been told what time and aperture will be used. If the camera would change the ISO at the time of flash metering, this data wouldn't be correct, but it's too late to find out then.
Hence the camera converts Auto ISO to ISO 400 as soon as you use the flash, to give you a consistent set of data for your picture. The user's guide would tell you this, but I don't think it tells you the technical reason for it.
Use the camera's ability to vary flash output, time and aperture instead.