class RoomNewTableViewCell: UITableViewCell {
    var row:Int?
    var room: Room?{
        didSet{
            updateUI() //this is when render is called
        }
    }
    override func awakeFromNib() {
        super.awakeFromNib()
        self.layoutMargins = UIEdgeInsetsZero 
        self.separatorInset = UIEdgeInsetsMake(0, -15, 0, 0) 
    }
    override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
        super.init(style: style, reuseIdentifier: reuseIdentifier)
    }
    required init?(coder aDecoder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
    func updateUI(){
        println("Updating UI")
        let test = UIView(frame: CGRect(x: 0, y: 0, width: 30, height: 30))
        test.backgroundColor = UIColor.greenColor()
        self.backgroundColor = UIColor.blueColor()
        self.addSubview(test)
    }
}
}
This is how I create my tableView:
    //Draw Table
    self.roomsTableView.delegate = self
    self.roomsTableView.dataSource = self
    self.roomsTableView.separatorStyle = UITableViewCellSeparatorStyle.SingleLine
    self.roomsTableView.separatorColor = UIColor(hex: 0xededed)
    let tableViewStartY = CGFloat(0) //used to be 20.0
    let extraPaddingToAlignTable = CGFloat(50)
    self.roomsTableView.frame = CGRectMake(0, tableViewStartY, screenWidth, CGRectGetMinY(self.tabBarController!.tabBar.frame) + extraPaddingToAlignTable)
    self.roomsTableView.addSubview(self.refreshControl)
    self.roomsTableView.tableFooterView = UIView(frame: CGRectZero)
    self.roomsTableView.rowHeight = CGFloat(100)
    self.roomsTableView.clipsToBounds = true
    self.roomsTableView.separatorInset = UIEdgeInsetsMake(0, 0, 0, 0)
    self.roomsTableView.contentInset = UIEdgeInsetsMake(0, 0, 0, 0)
    self.roomsTableView.registerClass(RoomNewTableViewCell.self, forCellReuseIdentifier: "newCell")
    self.view.addSubview(self.roomsTableView)
I've tried playing around separatorInset for both the table and cell, but can't seem to make it work.

 
    
