wp_get_attachment_url with specific image_size?

You can use single_product_large_thumbnail_size Woocommerce filter as shown in following code to apply custom image size for product.

In the above code replace this

apply_filters( 'single_product_large_thumbnail_size', 'shop_single' )

with this

apply_filters( 'single_product_large_thumbnail_size', 'custom_thumbnail_size' );