Well, finally i fixed it. Yes, Clive was absolutely right : The default value MUST be set using the date format "Y- default value MUST be set ONLY this way #default_value' =>m-d", such as with date('Y-m-d', $date) not depending #date_format value for date_popup field.
Difference wasdate('Y-m-d', $date)
.
The difference is that I used 'Y"Y-M-d'(same as in #date_format)d" instead of 'Y"Y-m-d'd" for setting #default_value. Thanks everyone. Hope this helps someone.