Custom Fields for Activities not getting Prefilled by a Drupal Webform
I have identified the problem.
This occurred only for the activities where the activity participant wasn't set. So it's all about contact record type in the civicrm_activity_contact table. The issue happens when you load the activity where you don't have the target specified (record_type_id = 3). If this happens the activity data loads, but the custom fields data don't.
I don't know if this is expected behavior, but I don't think so.
For me the fix is easy, I will just write an SQL query that will add the target contact (which same as the activity creator in my case).
I will create the issue for Drupal Webform CiviCRM Integration module.