Have a read of this page here explaining the ICANN policy on auto renew, transfers and refunds:
and this ICANN page
2.3 Auto-Renew Grace Period
The Auto-Renew Grace Period is a specified number of calendar days following an auto-renewal. An auto-renewal occurs if a domain name registration is not renewed by the expiration date; in this circumstance the registration will be automatically renewed by the system the first day after the expiration date. The current value of the Auto-Renew Grace Period is 45 calendar days. If a Delete, Extend, or Transfer occurs within the Auto-Renew Grace Period, the following rules apply:
Transfer (other than ICANN-approved bulk transfer). If a domain is transferred under Part A of Exhibit B to the Registry-Registrar Agreement within the Auto-Renew Grace Period, the losing Registrar is credited with the Auto-Renew charge and the year added by the Auto-Renew operation is cancelled. The expiration date of the domain is extended by one year up to a total maximum of ten by virtue of the transfer and the gaining Registrar is charged for that additional year, even in cases where a full year is not added because of the 10-year maximum limitation.
BlueHost are within their rights but should really offer you a refund if they were "nice". Pester them for it. They have had the money refunded so they should give it back to you but a lot of these companies have ToC's giving them every right to keep your money.
GoDaddy should have added a year to your domain. So you should now be one year up on previously despite paying for two.