Check below thread. They apparently don't transfer the dollar amount received but calculate based on its rupee value and use a lower exchange rate than the market. so you would always end up getting lesser amount than you paid. Yours seems on a higher end though. Double check with CIBC to be sure ! Its modern day robbery by banks !