Parece que o problema está relacionado à sobrecarga na estrutura da imagem de disco .VDI, reduzindo o espaço disponível para os dados. De acordo com uma postagem antiga, encontrei aqui sobre como os arquivos VDI são estruturados:
Todos os VDIs possuem essencialmente a mesma estrutura. O VDI tem quatro seções:
1) Um descritor de cabeçalho padrão [512 bytes]
2) Um mapa de bloco de imagem. Se o tamanho (máximo) do HDD virtual for N MByte, este mapa terá 4N bytes.
3) Bloqueie o preenchimento de alinhamento. O formato de cabeçalho permite o preenchimento entre o mapa de bloco de imagem e os blocos de imagem e (a partir da versão 1.6.2) a função CreateVDI adiciona preenchimento após o mapa para garantir que o primeiro bloco de imagem comece em um limite de setor de 512 bytes. Como a unidade de alocação nos sistemas de arquivos NTFS e Ext3 é de 4096 bytes, você terá, portanto, um desempenho um pouco melhor (normalmente alguns%) se fizer com que seus VDIs (1024N - 128) MByte sejam longos.
4) Até N x 1MByte blocos de imagem.
Então, de acordo com isso, estou perdendo 512 bytes para o descritor de cabeçalho + 4x8600 bytes para o mapa de blocos de imagem (outros 34.400 bytes) + preenchimento para garantir que terminemos em um limite de setor de 512 bytes que pelos meus cálculos é outros 416 bytes. Isso me coloca claramente em excesso de 35.000 bytes a menos do que o mínimo.