At present AWS Autoscaling can be used only with the Elastic Load Balancer. ELB has an API which makes it possible for the autoscaling policy to add new instances to the load balancer, which needs to be done manually in case of custom load balancer.
In terms of pros and cons, ELB is "Elastic", so it would scale up and down automatically based on the load where as scaling needs to be taken care of manually in case of custom load balancer. And a custom load balancer would give a lot of control over the configuration parameters. Most of the configuration parameters are available to tweak in ELB also. So, its a trade off between control and ease of scalability when choosing between ELB and software load balancer.