• The problem is that your expecting to store the file size of the actual physical file into your table which is not what your getting. What your getting is the size of the logical backup which was just appeneded to the file which is correct for your procedure. If you want the file size on disk you will need to loop through your existing sizes in your schedule table and add up the total size or use a WMI query or something similar to get the size from the file system.

    One thing I would strongly recommend is to use a timestamp in your backups and write to a new file every time and not append backups to the same file as if you get corruption in the backupset the whole backupset could be rendered invalid and you cannot restore from it so you loose all recoverability.