Non mi sbilancio in altre considerazioni, ma quel che di sicuro manca (ed è fondamentale nella scrittura) è il flushing e il closing degli output stream.
quindi intanto aggiungi dst.flush e dst.close e poi vediamo (magari un po' più di codice) che altro potrebbe essere da sistemare.